Allow assignment operation to assign a new value to a version part of an existing version whilst retaining the values of the other version parts
Updated function signature of AssignVersionPart and renamed associated function in Versioning module to match.

Added documentation for assign version part operation
Updated readme 

add a separation between the -a usages for clarity
Partial Active Pattern to match AssignRank discriminated union value
Restrict integer to be greater than or equal to 0
Incremented minor version,

in order to indicate that the addition of a function to assign a
particular value to a version part is a new feature. This resolves #19
(https://github.com/ploeh/ZeroToNine/issues/19).
Accepted only properly formatted version strings

for assignment operation.
Refactored IntegerGreaterThanOrEqualToZero

partial active pattern in order to simplify it a bit.
Ensured that the assign operation can handle

partial version strings.
Incremented patch version,

in order to indicate that checking for a properly parse version string
when assigning a version, constitutes a fix, in the sense that it's better
input validation.
Removed some redundant paratheses.