So everything will end up in the same namespace, which is pretty suboptimal. Return the factory instead?