Fix to the version number manipulation code
Add support for construction/assignment from iterators