Improvements to the nuget package script

Reworked the buildpackaqge script based on work done in https://github.com/AnthonySteele/MvcRouteTester/tree/master/buildpackage
command line options are
"-v a.b.c" manually set a version number. If not used, the version number generated will increment the last part of the latest version on nuget. This switch will be useful when we want to change the major/minor version number.
"-push true" actually push to nuget.org. If not supplied, it will will be a dry run. From experience, the dry run default helps with debugging without slips :P
"-prerelease true" append a "-prerelease" to the version number as per http://docs.nuget.org/docs/reference/versioning#Prerelease_Versions
This allows us to consume the latest version of the code off nuget if we choose, and so test this pre-release code in actual client. Requested strongly by Greg S

This all looks good to me so far but it's hard to test without pushing to nuget. Will try this after merge and fix if needed.