Fixed header and footer support.

Removed `leadingView` and `trailingView`, all these do is adjust margins, we don't use that at Artsy and I don't see how this can be useful. You just say "this is a view from which to take some margin on top or bottom". Bottom does nothing really other than give you some more scroll space. I think it would be useful to be able to insert a random view on top/bottom of the scroll though without having to supply a height and a reusable view, which is https://github.com/AshFurrow/ARCollectionViewMasonryLayout/issues/8.

Added optional header in the same vein as the footer via `headerHeight` and `headerViewClass`.

Updated documentation.
no preferences personally,  I tend to do `if (!xxx)` - think it might be better to move off that with swift explicitly not allowing this. Should probably move to `if(self.headerViewClass == nil)` or equivalent.