Implement instruction ast, parser and high-level test
replace boost::spirit with homegrown quark

spirit is cool but a) very hard to debug and b) super slow to
 compile.

quark is a tiny replacement that will work for our purpose