Go server: more tests, easier separation of concerns