Refactored configuration to be more testable and moved integration tests
more test features added