WIP: Play with a way to start moving logic to POROs by delegating model behavior

This is an extremely small first step towards getting logic out of the
activerecord models, it should not change any behavior and ultimately
just adds a level of indirection, but it enables us to start separating
these responsibilities and developing a pattern of how to handle logic
separately from models, as well as allows us to see where things are
called implicitly so that we can invert that to be more explicit.

Relates to #5636
I like this approach, and would like to continue down the path.  We should probably wait to see what others chime in with first, and then can add the deprecation warning in if people want to continue pursuing this.