While the new encoding from #8 does it's job and introduces safety to the built URLs I've found it occasionally breaks the structure of the domain specific search strings. For example, for Google spaces are denoted by the + character and a # is encoded as %23.
The current approach of URL encoding, while safe does not conform with the search string standards of different domains.