improved the version parsing engine to allow instantiating the array with hash or version objects
added more documentation to the book class