Added more utility functions to `arch' as required
New packed() utility for `bitfield' and `register'

packed
Reimplemented memory data structure, added stack

The memory data structure was an array, which made an address like
0xFF000000 extremely silly.

It has now been reimplemented as a hash, which is an improvement.

Also implemented a stack object which "mmaps" onto the memory object.
Merge branch 'feature/stack' into develop