Implement object.hashCode() for Identifier
Add Environment,mapping of Identifier->Instruction

This will allow me to implement scope for variables and function
parameters.
Use Environment in Parser

This isn't complete, or bug free, just a first step
Refactor ir to use a more generic Value base class
Refactor, move ir.* classes to ir.base
Refactor, move concrete classes into ir
Use equals() for comparisons for arg replacement
Add NamedValue.java

This allows for placeholders which have specific names, such as function
argument values or addresses of globals.
Use NamedValue as a default value

This is for function parameters and variables.
Initialize member
Initialize Environment in Parser