Use slices instead of borrowed Vec<MessageItem>

slices are more flexible and idiomatic.  The construction of a Vec
requires allocation on the heap, whereas a slice can come from
anywhere.
Merge pull request #1 from infinityb/master

Use slices instead of borrowed Vec<MessageItem> in append_items