added installer code
refactored usings