Merge pull request #580 from mikeshulman/commsq

Some lemmas about commutative squares.
most of the stuff in Basics/Fibrations is subsumed by Types/Sigma
move NullHomotopy into its own file
Merge pull request #581 from mikeshulman/fibrations

most of the stuff in Basics/Fibrations is subsumed by Types/Sigma
Merge pull request #582 from mikeshulman/nullhomotopy

move NullHomotopy into its own file
uniformize implicit arguments for *_equiv and *_homotopic
also uniformize inO_equiv_inO
Merge pull request #584 from mikeshulman/implicits

uniformize some implicit arguments
Use records, not typeclasses, for subuniverses and modalities