Set major/minor version to 0.5, to represent unstable status of the API

Version changed to major/minor 0.5, to represent unstable status of the API (not yet at v1.0).

This means if following Semantic Versioning we are allowed to make breaking changes (such as removing obsolete methods when cleaning up code and improving consistency of the API) without needing to increase the version number. 

Once the API is relatively stable, it can be released as 1.0, however after that point all changes other than bug fixes should be indicated by a minor version increase, and breaking changes with a major version increase.