Adds null reference checks for `GetValue<T>`.

Fixes #134
Merge branch 'master' into develop
When using ValueConverters, pass along the Content Type - fixes #133

* Add new property HostContentType to make Properties aware of their content type
* Adjust Dummy PropertyType to include the Content Type
* Pass in Content Type from ValueConverter to Deserialization helper through new optional parameter
* Populate the property's HostContentType via RetrieveAdditionalProperties
* Make sure HostContentType isn't persisted

Notes: In some cases, the Umbraco Core looks for pt.ContentType.Alias, which didn't exist previously in our Dummy PropertyType.  This would also potentially cause an error if any PVC's do the same.

To fix we now keep track of the Content Type that the Archetype exists on (determined in the ArchetypeValueConverter), and pass this along to our Dummy PropertyType (and thus to PVCs)

Note we made the hostContentType an optional parameter as there's some cases where we won't know the content type (ie ConvertDbToEditor).  This (shouldn't?) be an issue as these cases should never have a reason to call GetValue.
Ensure new HostContentType isn't persisted
Merge pull request #136 from leekelleher/feature/issues/134

Adds null reference checks for `GetValue<T>`.
Merge branch 'master' into fix/133
Merge remote-tracking branch 'upstream/master'
Update README.md
Merge pull request #139 from imulus/fix/133

Send ContentType when using ValueConverters
Merge pull request #144 from imulus/develop

Develop
Merge remote-tracking branch 'upstream/master'
Merge branch 'master' into issue131_optimized