Cleans up the codebase

This change attempts to clean up the codebase.
Added changes:
    * Error codes in Mic class
    * Error codes in OutputDevice class
    * Adds some log messages (I think)
    * Minor changes to MainProcess class

Additionally, all of the tests have been updated
take into account that most of the functions now
return an error code. Most tests also verify that
the correct error code is returned.

An APK with the current build has also been
added to the repo.

Issue: 15