Return full response instead of individual values

Instead of unpacking certain values we return the entire struct. This
will make the library less tighly coupled with packer.