Object collision, creation and destroy is one of the many action that is considered authoritative, so you need to get the action to be executed from host. Singular action like these are usually done using the Action:Send Message (reliable mode) because you probably need them to be triggered in sequential manner. However to update peers you may lower the reliability mode of broadcasting from host if it is just for visual update. Data sensitive communication should always use reliable mode though.
To use peer as collision checker is possible but this will be difficult to stay sync in small lag margin, but on the other hand, if the host is the collision checker, it will strain some performance from the host, if host is a player.
I would say big rooms (more than 20 players) will require dedicated server (can be done within C2) with no visual or by creating artificial collision checks. Artificial collision check is by far the most difficult thing I ever encountered in C2 :O
I've done a few test so far what I see is hosting 2-8 players by client as host is acceptable (browser performance test). However I never tried against mobile, but my verdict is mobile probably are fairly acceptable in 2-4 players in number. This is in sense of real time gaming, but for asynchronous game, like turn based games would be no issue at all.