Completed MidiStream module with basic functionality

Big ugly commit. Everything works.
Changed structure, more modularity, don't care about polyfills - extend everything.