Renamed Publisher to PublisherContract.
Renamed name field to publisherName.
Added assertHasNotBeenRegistered.