Basic parsing of integer and variable reference literals

Depends on #141 

Implements basic parsing for integer and variable reference literals
Because evaluate just returns a `Value`. Sometimes we expect a particular subclass of `Value` and need to use its functionality right away.