Fix aliased fields and embedded children

When passing an `:as` option, active_attr used the original field name rather
than the aliased one.

ActiveSupport's Hash.slice/slice! methods expect an argument list rather
than an array.

Hash.slice! returns a hash of the key/value pairs that were _removed_
rather than the modified hash itself.