ruby: PoC/WIP/RFC - key based filter of the top level hash

    Sereal.decode(blob, {
                          "key-i-am-interested-in" => 1,
                          "another-key-i-want"     => 1,
                        })

if the top-level decoded object is a hash, it will only extract
the requested keys, everything else will be skipped(ignored)
no objects will be created:

   srl-eSC      12858 i/100ms # sereal encode
   srl-dSC      11282 i/100ms # decode only 1 key from 100 key hash
     srl-e      12697 i/100ms # sereal encode
     srl-d      3568  i/100ms # decode the whole hash
     msg-e      18276 i/100ms # msgpack encode
     msg-d      3309  i/100ms # msgpack decode the whole hash

this breaks ALIASes, because the alias-ed object is not constructed, but
it does not break COPY tags