Seems like we run `XML.cast(el)` twice right? Should we just set a temporary then test it?
```
foo = XML.cast(el)
if foo.kind_of? Hash
  recurlyHash = foo
...
```