Merge branch 'feature-gearc-compiling' into gearc

* feature-gearc-compiling:
  Implement compilation of statements and expressions
  Export compiler state mutators
  Add Compiler monad and state manipulation functions
Fix order in which atoms and strings are inserted

They ought to be inserted at the end, not in the beginning. This way it
will work with existing instructions.
Merge branch 'feature-gearc-compiling' into gearc

* feature-gearc-compiling:
  Fix order in which atoms and strings are inserted
Merge branch 'gearc' into develop

* gearc:
  Fix order in which atoms and strings are inserted
Merge branch 'gearc' into feature-gearc-object-file-writing

* gearc:
  Fix order in which atoms and strings are inserted
Implement object file writing
Merge branch 'gear' into gearc

* gear:
  Add pop instruction
Merge branch 'feature-gearc-object-file-writing' into gearc

* feature-gearc-object-file-writing:
  Implement object file writing
Merge branch 'gearc' into develop

* gearc:
  Implement object file writing