Bank Switching!

Fix stupid check in MemoryRange preventing Devices 1 byte in size
Changed some naming in Memory
Added a really basic ANSI support in Console Driver

Added Banked Memory and a Bank Switcher
This makes 16KB of static always there memory
and then gives up to 4MB of memory in 16KB chunks
Bank Switching is simple, write value to 8804, bank switched!
Verifying you have enough memory can be done in reading 8805 (Not
implemented), or re reading 8804 to get current bank.