starting to feel out how to calc opacity
another major cleanup to include easing, better function chunks and default values for properties