Added additional centring methods, adjustments to spacing method and cleaned up some internal methods

I've added the following methods:

* `-(NSLayoutConstraint *)centerInView:(UIView *)view onAxis:(NSLayoutAttribute)axis;`
* `-(NSArray *)centerInContainer;`
* `-(NSArray*)spaceViews:(NSArray*)views onAxis:(UILayoutConstraintAxis)axis withSpacing:(CGFloat)spacing alignmentOptions:(NSLayoutFormatOptions)options flexibleFirstItem:(BOOL)flexibleFirstItem applySpacingToEdges:(BOOL)spaceEdges;`

There are also three new tests for the above methods.

I have also refactored some of the existing methods to channel through `pinAttribute:...` instead of creating a new `NSLayoutConstraint` and adding it directly.