well i replaced the factories with an abstract one on @Ocramius request.