Naming changes and some new classes

* New browser, request, and respone classes
* Use lowerCamelCase for method names
* Not using lowerCamelCase for tests case (problems in event test)
* Namespaces are now lowercase
Part of last commit.