Assembler improvements
- Support hex integer constants (instead of just decimals)
- Add 'org' directive to set base address
- Make assembler take input and output filenames instead of just using stdin/stdout
Make global memory start at a fixed address (16k) instead of being dependent on the amount of local memory