Switch to function pointer based easing, add cubic bezier curve easing utility and a few new easings