Add writer abstraction and implementations (RIPD-664):
This provides an interface used to provide data for a "pull" style
asynchronous writing. An implementation is provided that returns data
from a beast::asio::streambuf object.