Tasks that are left for later:
- Save compiled instructions to a file
- Custom types
- Range operator (..)
- Function captures
- Special line splitting for functions (if nextline starts with returns, join the lines)
- Special syntax for events
- Better checks for events