Versioned now creates a new version if the version is 0

Hello,

Previously writing an object to staging and then publishing it resulted in a version number mismatch between staging and live. Now the code is changed to check for 0 as a version number.

I've found this issue while trying to publish a SiteTree descendant. After doing ->writeToStage('Stage') and ->doPublish(), the above case occured and the item was being shown flagged as deleted from draft in the cms.
This is similar to the fix in master. :) https://github.com/silverstripe/silverstripe-framework/blob/master/model/Versioned.php#L654