backend for API v0.1 basically complete