prepare for first release to production
refactoring after frees
refactoring after frees after  merge
services to factory
fix lang
add commens