Update KeyframeAnimationEffect to reflect FPWD

- Update KeyframeAnimationEffect API
- Remove Keyframe from API as this is now just a dictionary
- Update algorithm for normalizing the list of keyframes
- Update algorithm for sampling a KeyframeAnimationEffect
- Handle interpolating between keyframes with different composite operations
- Remove redundant KeyframeList and GroupedAnimationEffect types
- Remove merge composite operation
- Update tests accordingly