Many changes

Changed to strict mode
Added method containsPathComponent()
Added method getPortNum()
Added method setQueryItem()
Added method removeQueryItem()
Added method setHash()
Added method isSameOrigin()
Updated test suite