Separate responsibilities of Adhearsion.active_calls into a passive collection and an active supervisor

This allows for greater stability (the actor portion is a simple supervisor which is crash-resistant) and greater performance (call lookups are now synchronised by a simple Monitor, rather than an actor, which is much faster).