Basic document attachment support

Added two simple functions for setting and retrieving document attachments.

The GetAttachment method is needed to bypass the document name escaping ('/' must remain untouched) as GetRaw will escape the slash and CouchDB will look for a document, not an attachment.

PutAttachment's interface is very different than PutDocument's as some document info is still needed (and the document itself for updating the last-modified time) and it also accepts an io.Reader for the attachment's contents.