injectables context manager

The sim.injectables context manager allows you to temporarily set
some injectables to given values for a limited scope.
Injectables should be returned to their original values when the
context manager exits, but changes to things like tables
could have lasting effects.
Function for checking whether a name is an expression
eval_variable function

This can be useful when you want to evaluate a single injectable,
table, or column and get back the result as it would be injected into
a function under the simulation framework.
eval_model function

Useful for evaluating a single model and gettings its return value.
Models often have side effects instead of return values,
and the simulation framework ignores model return values,
but this could be useful for model evelopment.
cache_disabled context manager

Disable cacheing for a specific block of commands.
Add some toolz laziness to labels dict creation
Docs about eval_variable and eval_model

[ci-skip]
Merge pull request #128 from synthicity/sim-exec

Evaluate variables and models a la carte