towerprime: initial stab at ast
towerprime: provisional ast
towerprime: monads separate codegen continuation from ast
towerprime: fill out monads, directory in ast
towerprime: start filling out OS and channel implementations
towerprime: restructure the basics of chan emitter/receiver a bit
towerprime: has timer events
towerprime: toplevel interface filled out, simple periodic task typechecks
towerprime: fixups
towerprime: stubs in prep for frontend packages
towerprime-freertos: initial commit (mostly a stub)
towerprime-frontend: initial commit (mostly a stub, broken)
towerprime-freertos: add ivory-freertos-wrapper c code to cabal package
towerprime: add platform phantom type to Tower and Task monads
towerprime: move SystemCode and TaskCode to their own types
towerprime: add compile module that defers code generation to new OS functions
towerprime-frontend: uses Tower.compile rather than FreeRTOS.compile
towerprime-freertos: stub out new OS interface
towerprime: generalize type for timercode

- no need to restrict that to stack allocation
towerprime-freertos: start filling out codegen

- emits nonsense at the moment, but better than nothing