Added infrastructure code for reading input stream and refactored audio and stream code into separate files