Splitting component lifecycle

Moves most of the component specific parts to Aura extensions.