Rewrite API to match Bitmap Loader, and rearrange repo for tests and demo.