Cleaned up how subclasses of Aspect add their own custom shift and lens
behaviors