Added City and Country Search and various refactoring