Add getVariable() function to the formula parser

This is designed to be a more robust function for accessing object
variables. It will be replacing all of the various getCharacter
and stat functions as well as the objRef function. It will also be
used for any other future variable referencing functions.
Remember to add the final value as the last term
Validate our data lookups a bit more robustly

Of note here is the need to use is_object() instead of
isset(). Because of the semi-interesting nature of our
container objects being accessed via __get() and __invoke()
it causes __isset() to get called and ultimately return false.
Rename our lookups to access the actual variable name