Hooks, validations, lifecycle

... and tests for these amends.