Refactor: Move Topic Details into better objects, identity map, tests, query string filters