Split from #43.
I need to look in more detail into what the current AblyPlugin method is doing and where the division of responsibility should lie.
Also note that size checking is currently deferred to #13.
┆Issue is synchronized with this Jira Task by Unito