Documentation

Fixed some errors in documentation and added more. Also added a couple
define macros. I plan on not hardcoding variables specific to the emulated
system, but I want to see it running and don't want to have to learn a
completely new device (NES) so I'm planning on using it first for the
gameboy emulator. I've also realized that (almost) all opcodes in gb
emulator are correct, the problem is with changing variables while using
peripherals(probably LCD), so there shouldn't be any issues with changing
opcodes to use dynarec