everything works, albeit clunky (v0.9)