refactoring MouseEvent and MouseEventStream
added test cases for layer handling
integrated tests for pan behaviour
integrated tests for MapViewport
integrated tests for map controls
integrating map tests into test suite