Fix test spec for keep-alive peerwire messages

I think this makes sense. Either way, at a higher-level, all messages
that fail to parse should be considered keep-alive messages, so it
doesn't seem to make that much sense to waste parsing performance (or my
own time) with this.
Add working peerwire decoding implementation

This will still be heavily refactored, but I'd like to step away and see
how it handles real-life, rather than testing over arbitrary specs.