begin work on a new assembler. only instruction definitions for now
add program and program builder classes
add parser for the assembler language
we don't have pure DateTime immediates
don't use pointers to labels
generate a Program from IR input
add a pretty printer for programs
add simple assembler
oops, that should be "default"
add a disassembler component
make Program, Builder move-only
don't need move iterators here
make invalid check for DTMask nicer
make some asserts exceptions again for release builds