Add foreAlignmentEdge property to TransitionController.
If a view controller has a non-zero preferredContentSize, then the foreAlignmentEdge will be used to align the view to either the center of the screen, if nil, or to the specified edge (one of minX, minY, maxX, or maxY).
If preferredContentSize is zero, then the transition's finalFrame value will be used instead - this is generally the containerView's bounds.
This API is useful for building modal dialogs and sliding drawers that are presented over the current context with modalPresentationStyle = .overCurrentContext.
Tags: Material Motion
Differential Revision: http://codereview.cc/D3067