Extract resource invitation into its own method

This makes it possible for a subclass to override how the resource is
created (e.g. by passing a block to resource.invite!) without needing to
override the entire create method.
document new column in CHANGELOG, closes #356