Smartdown evaluation engine

Also added a command line script in `bin/smartdown` which can evaluate smartdown.

+1 popping something as a reminder, i'm fine with `@TODO`s, or explicit tasks in the backlog. Probably prefer the later, as we're going to be using that to review how the MVP went and whats missing.