major api overhaul...
v0.4.0