Use `public_send` where possible

also lowers the public method signature of `ActiveAdmin::Callbacks`

resolves #3044