this is awesome. as someone who wrote one of these (i.e. chip8 emulator) myself way back I am in awe about how polished this is.  
I think this is one of the best way you can get a hands-on experience on emulators the diy route.  
Awesome job!