AsNamespace tweaks to pascal case segments

Added a new Extensions.Test project to more easily validate changes to this core library. Tweaked the AsNamespace method(s) to pascal case each piece of a namespace while preserving any other casing already inherited. Also changed AsNamespace to allow for a custom illegal character replacement value (such as nothing at all to create namespaces like .UserDefined. instead of .User_Defined.). Adjusted the Helpers.tt to make no space the default. Modifications to the Capitalize extension method were made to support this.

There is a change to the Sitecore.Master project that I had to make in order to get the solution to build (it was referencing a defunct source web project.