rtl/debug: implement memory accesses.

This supports 8, 16 and 32 bit memory accesses.  This means that we can
do JTAG type debug now to load programs, execute them and fully debug
them!
debugger: support all memory read/write operations.