core: Inline mallocing wrapper functions

As far as I can tell, this doesn't make rust compile any
faster, but it does at least remove one level of indirection
on malloc, which might help speed up some operations.
std: change Decoder::read_option to return a generic type

This allows read_option to be used with a custom option type instead
of just core::Option.
std: remove prettyprint

Everyone uses fmt!("%?", ...) instead of the prettyprint
module, so I'm removing this file.
core: add LinearMap::with_capacity
std: remove Encoder::emit_{owned,managed}_str and Decoder::read_{owned,managed}_str
std: remove Encoder::emit_{owned,managed} and Decoder::read_{owned,managed}
std: remove Encoder::emit_{owned,managed}_vec and Decoder::read_{owned,managed}_vec
std: remove Encoder::emit_tup{,_elt} and Decoder::read_tup{,_elt}
std: remove Encoder::read_rec and Decoder::emit_rec
core: add consume_reverse
std: add Encoder::emit_map and Decoder::read_map
Merge remote-tracking branch 'remotes/origin/incoming' into serial