Rewrote the frontend to cmd/sim.c

It will be much easier to add new options as necessary
Added the iris linker

The iris linker (img.c -> rl) generates an image from a map file generated by
the assembler.
Got a basic working rl

Testing still is required but the program works and compiles
Renamed rl to lnkiris
lnkiris: input file is now opened before output
Moved the FileWrapper struct into util

This move makes it easier to write more tools
sim.c now uses util.h
Added the initial folder for the asm command
Added the decode program
decode now prints out the decoded commands

One command per line
Added asm.l
Added .gitignore for asm
Updated asm.l and asm.y
Updated gitignore and continuing to implement asm
Updated .gitignore
Continuing to implement asm
$ are no longer used to describe immediates

The assembly parser is intelligent enough to differentiate.
Fixed bugs and unused variables in decode and sim.c
Continuing to implement assembler

- Added declare directive and more code to handle different aspects of
  assembling
Fixed shift/reduce and reduce/reduce conflicts