Create context location for passing program state

Use the begin.context object to store state about the program's
execution. Manages passing of option groups for previous, current and
following commands as well as return values. Closes #24.