Refactor to abstract plugin and package objects and allow for older versions to be exposed in packages.json.
Update the readme.