Erm, need to fix this eventually.
Add unflurrying boost::optional<T>.
Vectors can be flurried now.
Catch unimplemented calls with an assert.