Refactor author account

Kind of a messy pull request, there is code in here not totally related, will try to clean that up going forward.

:ship: