shotop: tests for api; updates to directory structure