Committed to promises, added recording, and cleaned up code.

We began and finished the exodus to promises. Callbacks are now
only used for event handlers. On top of that, more code clean up
was done, such as the renaming of variables and functions to
better clarify what they do. Recording has also been added to the
admin menu. The record_conference option in the database can be
set to true to automatically record the conference when a user
joins. Admins can pause and unpause the conference in the admin
menu. When the last user leaves the conference, the recording is
stored in the var/spool/asterisk/recording directory.

* Converted callbacks to promises
* Added recording functionality
* Cleaned up some code