Rudimentary two phase asm compiler/parser

Adds support for labels for subroutines.

Little hacky, refactoring to come.
Remove "data" section of asm

I had a reason for it before, i forget what that reason was, but I
no longer desire it.

Also, drop a print debug statement from last commit i forgot to get
rid of.
Remove Assign insn

Not connected to the compiler and not necessary yet
Separate data and insn ptr stack

Add/restructure tests accordingly. Added Nop for extra help.
Add example using subroutines and arg passing
Remove outdated asm documentation on parser

Moving too fast to keep up to date
Rework parser/compiler for better error messaging

Previously on a parse error it would try to fully reify the
intermediary instructions, which couldn't happen because the
entire file hadn't been parsed yet.