Make inverse rewrite laws for pseudofunctor

These are slow, but useful for lax comma categories.

After     | File Name                                                          | Before   || Change
------------------------------------------------------------------------------------------------------
10m30.81s | Total                                                              | 9m47.23s || +0m43.57s
------------------------------------------------------------------------------------------------------
0m32.85s  | categories/Pseudofunctor/Core                                      | 0m12.02s || +0m20.83s
0m43.25s  | categories/Grothendieck/PseudofunctorToCat                         | 0m26.34s || +0m16.91s
0m18.90s  | categories/Adjoint/UnitCounitCoercions                             | 0m16.90s || +0m02.00s
0m17.59s  | categories/Comma/InducedFunctors                                   | 0m15.20s || +0m02.39s
0m34.96s  | categories/Adjoint/Composition/AssociativityLaw                    | 0m33.84s || +0m01.11s
0m12.09s  | categories/Adjoint/Composition/IdentityLaws                        | 0m10.90s || +0m01.18s
0m11.72s  | categories/Adjoint/Dual                                            | 0m12.72s || -0m01.00s
0m07.02s  | categories/UniversalProperties                                     | 0m08.32s || -0m01.30s
0m06.28s  | categories/Comma/Dual                                              | 0m07.36s || -0m01.08s
1m45.42s  | categories/Comma/ProjectionFunctors                                | 1m44.94s || +0m00.48s
0m22.26s  | categories/Adjoint/HomCoercions                                    | 0m21.91s || +0m00.35s
0m17.00s  | categories/ExponentialLaws/Law4/Functors                           | 0m17.23s || -0m00.23s
0m15.82s  | categories/FunctorCategory/Dual                                    | 0m15.08s || +0m00.74s
0m15.46s  | categories/PseudonaturalTransformation/Core                        | 0m14.96s || +0m00.50s
0m13.52s  | categories/Pseudofunctor/Identity                                  | 0m13.69s || -0m00.16s
0m12.42s  | hit/Flattening                                                     | 0m12.76s || -0m00.33s
0m12.39s  | categories/Adjoint/Composition/Core                                | 0m12.32s || +0m00.07s
0m12.38s  | categories/Functor/Pointwise/Properties                            | 0m12.44s || -0m00.05s
0m12.28s  | categories/Pseudofunctor/FromFunctor                               | 0m12.31s || -0m00.03s
0m08.79s  | categories/Functor/Prod/Universal                                  | 0m08.28s || +0m00.50s
0m08.52s  | categories/ExponentialLaws/Law1/Law                                | 0m08.07s || +0m00.44s
0m08.37s  | categories/GroupoidCategory/Morphisms                              | 0m07.64s || +0m00.72s
0m08.14s  | categories/Yoneda                                                  | 0m08.08s || +0m00.06s
0m07.19s  | hit/Connectedness                                                  | 0m07.10s || +0m00.09s
0m06.51s  | categories/Structure/IdentityPrinciple                             | 0m06.59s || -0m00.08s
0m06.30s  | categories/Functor/Paths                                           | 0m05.76s || +0m00.54s
0m06.24s  | categories/Adjoint/Paths                                           | 0m07.09s || -0m00.84s
0m06.03s  | categories/Category/Morphisms                                      | 0m06.10s || -0m00.06s
0m05.66s  | categories/Adjoint/UnitCounit                                      | 0m05.61s || +0m00.04s
0m05.54s  | categories/Functor/Sum                                             | 0m05.54s || +0m00.00s
0m05.52s  | EquivalenceVarieties                                               | 0m05.68s || -0m00.16s
0m05.12s  | categories/ExponentialLaws/Law2/Functors                           | 0m04.96s || +0m00.16s
0m04.46s  | categories/Category/Sigma/OnMorphisms                              | 0m04.54s || -0m00.08s
0m04.44s  | categories/DualFunctor                                             | 0m04.75s || -0m00.30s
0m03.74s  | categories/ProductLaws                                             | 0m03.62s || +0m00.12s
0m03.72s  | categories/Structure/Core                                          | 0m03.65s || +0m00.07s
0m03.33s  | types/ObjectClassifier                                             | 0m03.44s || -0m00.10s
0m03.13s  | HSet                                                               | 0m02.94s || +0m00.18s
0m02.94s  | categories/Functor/Prod/Functorial                                 | 0m02.91s || +0m00.02s
0m02.94s  | types/Sigma                                                        | 0m02.94s || +0m00.00s
0m02.89s  | categories/Functor/Composition/Functorial/Attributes               | 0m02.80s || +0m00.09s
0m02.78s  | categories/Adjoint/UniversalMorphisms                              | 0m02.87s || -0m00.09s
0m02.68s  | HProp                                                              | 0m02.67s || +0m00.01s
0m02.60s  | categories/FunctorCategory/Functorial                              | 0m02.80s || -0m00.19s
0m02.58s  | categories/Grothendieck/ToSet                                      | 0m02.59s || -0m00.00s
0m02.57s  | Equivalences                                                       | 0m02.52s || +0m00.04s
0m02.26s  | categories/Functor/Attributes                                      | 0m02.21s || +0m00.04s
0m02.23s  | categories/Category/Sum                                            | 0m02.31s || -0m00.08s
0m02.11s  | categories/Category/Sigma/Core                                     | 0m01.96s || +0m00.14s
0m02.10s  | categories/Comma/Core                                              | 0m02.02s || +0m00.08s
0m02.07s  | categories/NaturalTransformation/Isomorphisms                      | 0m02.18s || -0m00.11s
0m01.90s  | types/Record                                                       | 0m01.93s || -0m00.03s
0m01.88s  | PathGroupoids                                                      | 0m02.02s || -0m00.14s
0m01.81s  | categories/NaturalTransformation/Dual                              | 0m01.79s || +0m00.02s
0m01.74s  | categories/FunctorCategory/Morphisms                               | 0m01.65s || +0m00.09s
0m01.72s  | categories/HomFunctor                                              | 0m01.74s || -0m00.02s
0m01.58s  | categories/NaturalTransformation/Paths                             | 0m01.59s || -0m00.01s
0m01.56s  | categories/Limits/Core                                             | 0m01.20s || +0m00.36s
0m01.38s  | categories/InitialTerminalCategory/Pseudofunctors                  | 0m01.40s || -0m00.02s
0m01.36s  | categories/Category/Sigma/OnObjects                                | 0m01.40s || -0m00.03s
0m01.28s  | categories/NaturalTransformation/Pointwise                         | 0m01.32s || -0m00.04s
0m01.26s  | categories/Category/Prod                                           | 0m01.25s || +0m00.01s
0m01.24s  | types/Prod                                                         | 0m01.28s || -0m00.04s
0m01.13s  | categories/NaturalTransformation/Composition/Laws                  | 0m01.15s || -0m00.02s
0m01.11s  | hit/epi                                                            | 0m00.96s || +0m00.15s
0m01.06s  | categories/Functor/Pointwise                                       | 0m01.03s || +0m00.03s
0m01.06s  | categories/Functor/Composition/Functorial/Core                     | 0m01.11s || -0m00.05s
0m01.04s  | categories/ExponentialLaws/Law   N/A                               | 0m00.98s || +0m00.06s
0m01.04s  | categories/CategoryOfSections/Core                                 | 0m01.09s || -0m00.05s
0m00.96s  | categories/ExponentialLaws/Law1/Functors                           | 0m01.02s || -0m00.06s
0m00.95s  | categories/NaturalTransformation/Prod                              | 0m00.93s || +0m00.01s
0m00.95s  | contrib/HoTTBookExercises                                          | 0m00.97s || -0m00.02s
0m00.94s  | hit/Spheres                                                        | 0m00.86s || +0m00.07s
0m00.88s  | categories/Functor/Prod                                            | 0m00.94s || -0m00.05s
0m00.87s  | types/Paths                                                        | 0m00.81s || +0m00.05s
0m00.76s  | categories/SetCategory/Morphisms                                   | 0m00.78s || -0m00.02s
0m00.71s  | categories/categories                                              | 0m00.66s || +0m00.04s
0m00.69s  | contrib/HoTTBook                                                   | 0m00.80s || -0m00.11s
0m00.66s  | hit/Suspension                                                     | 0m00.69s || -0m00.02s
0m00.65s  | UnivalenceImpliesFunext                                            | 0m00.66s || -0m00.01s
0m00.65s  | categories/NaturalTransformation/Composition/Core                  | 0m00.61s || +0m00.04s
0m00.63s  | types/Universe                                                     | 0m00.74s || -0m00.10s
0m00.61s  | types/Sum                                                          | 0m00.57s || +0m00.04s
0m00.60s  | Trunc                                                              | 0m00.56s || +0m00.03s
0m00.60s  | hit/Circle                                                         | 0m00.50s || +0m00.09s
0m00.56s  | Functorish                                                         | 0m00.58s || -0m00.01s
0m00.53s  | hit/quotient                                                       | 0m00.57s || -0m00.03s
0m00.53s  | categories/Comma/Projection                                        | 0m00.57s || -0m00.03s
0m00.52s  | categories/Functor/Composition/Laws                                | 0m00.53s || -0m00.01s
0m00.50s  | categories/InitialTerminalCategory/Functors                        | 0m00.48s || +0m00.02s
0m00.49s  | categories/NaturalTransformation/Sum                               | 0m00.60s || -0m00.10s
0m00.48s  | categories/Limits/Functors                                         | 0m00.47s || +0m00.01s
0m00.48s  | categories/KanExtensions/Functors                                  | 0m00.47s || +0m00.01s
0m00.44s  | categories/ExponentialLaws/Law3/Functors                           | 0m00.46s || -0m00.02s
0m00.44s  | types/Forall                                                       | 0m00.44s || +0m00.00s
0m00.41s  | Tactics                                                            | 0m00.45s || -0m00.04s
0m00.40s  | Fibrations                                                         | 0m00.32s || +0m00.08s
0m00.40s  | categories/KanExtensions/Core                                      | 0m00.35s || +0m00.05s
0m00.39s  | categories/Cat/Core                                                | 0m00.42s || -0m00.02s
0m00.38s  | categories/NaturalTransformation/Identity                          | 0m00.40s || -0m00.02s
0m00.37s  | categories/FundamentalPreGroupoidCategory                          | 0m00.35s || +0m00.02s
0m00.37s  | categories/Functor/Functor                                         | 0m00.31s || +0m00.06s
0m00.36s  | TruncType                                                          | 0m00.38s || -0m00.02s
0m00.34s  | categories/IndiscreteCategory                                      | 0m00.30s || +0m00.04s
0m00.34s  | categories/Functor/Dual                                            | 0m00.34s || +0m00.00s
0m00.34s  | categories/Utf8                                                    | 0m00.30s || +0m00.04s
0m00.32s  | categories/InitialTerminalCategory/NaturalTransformations          | 0m00.29s || +0m00.03s
0m00.32s  | categories/HomotopyPreCategory                                     | 0m00.33s || -0m00.01s
0m00.32s  | categories/Cat/Morphisms                                           | 0m00.27s || +0m00.04s
0m00.31s  | categories/ExponentialLaws/ExponentialLaws                         | 0m00.24s || +0m00.07s
0m00.30s  | categories/NaturalTransformation/Composition/Functorial            | 0m00.33s || -0m00.03s
0m00.28s  | categories/InitialTerminalCategory/InitialTerminalCategory         | 0m00.25s || +0m00.03s
0m00.27s  | categories/Functor/Composition/Core                                | 0m00.24s || +0m00.03s
0m00.27s  | categories/Functor/Utf8                                            | 0m00.20s || +0m00.07s
0m00.27s  | types/Arrow                                                        | 0m00.26s || +0m00.01s
0m00.27s  | categories/Notations                                               | 0m00.27s || +0m00.00s
0m00.26s  | categories/Adjoint/Hom                                             | 0m00.28s || -0m00.02s
0m00.26s  | categories/Adjoint/Adjoint                                         | 0m00.26s || +0m00.00s
0m00.25s  | categories/Functor/Composition/Composition                         | 0m00.22s || +0m00.03s
0m00.25s  | categories/Functor/Notations                                       | 0m00.16s || +0m00.09s
0m00.24s  | categories/SetCategory/Functors/Functors                           | 0m00.19s || +0m00.04s
0m00.24s  | categories/Category/Objects                                        | 0m00.28s || -0m00.04s
0m00.24s  | hit/minus1Trunc                                                    | 0m00.33s || -0m00.09s
0m00.22s  | Conjugation                                                        | 0m00.23s || -0m00.01s
0m00.22s  | categories/Grothendieck/Grothendieck                               | 0m00.36s || -0m00.13s
0m00.21s  | categories/Limits/Limits                                           | 0m00.18s || +0m00.03s
0m00.21s  | categories/Pseudofunctor/Pseudofunctor                             | 0m00.18s || +0m00.03s
0m00.20s  | hit/iso                                                            | 0m00.19s || +0m00.01s
0m00.20s  | categories/Grothendieck/ToCat                                      | 0m00.21s || -0m00.00s
0m00.20s  | categories/FunctorCategory/FunctorCategory                         | 0m00.19s || +0m00.01s
0m00.20s  | FunextVarieties                                                    | 0m00.16s || +0m00.04s
0m00.20s  | types/Bool                                                         | 0m00.23s || -0m00.03s
0m00.19s  | categories/FunctorCategory/Utf8                                    | 0m00.19s || +0m00.00s
0m00.19s  | categories/Adjoint/Notations                                       | 0m00.16s || +0m00.03s
0m00.19s  | categories/PseudonaturalTransformation/PseudonaturalTransformation | 0m00.17s || +0m00.01s
0m00.19s  | categories/ExponentialLaws/Law1/Law1                               | 0m00.14s || +0m00.04s
0m00.19s  | categories/NaturalTransformation/Utf8                              | 0m00.20s || -0m00.01s
0m00.18s  | categories/Functor/Composition/Functorial                          | 0m00.19s || -0m00.01s
0m00.18s  | HoTT                                                               | 0m00.20s || -0m00.02s
0m00.18s  | categories/NatCategory                                             | 0m00.20s || -0m00.02s
0m00.18s  | categories/Category/Pi                                             | 0m00.17s || +0m00.00s
0m00.18s  | categories/FunctorCategory/Core                                    | 0m00.21s || -0m00.03s
0m00.17s  | categories/KanExtensions/KanExtensions                             | 0m00.15s || +0m00.02s
0m00.17s  | categories/Adjoint/Identity                                        | 0m00.15s || +0m00.02s
0m00.17s  | categories/GroupoidCategory/Core                                   | 0m00.19s || -0m00.01s
0m00.17s  | categories/Adjoint/Composition/Composition                         | 0m00.17s || +0m00.00s
0m00.17s  | categories/ExponentialLaws/Law2/Law2                               | 0m00.16s || +0m00.01s
0m00.16s  | categories/ExponentialLaws/Law3/Law3                               | 0m00.15s || +0m00.01s
0m00.16s  | categories/DependentProduct                                        | 0m00.20s || -0m00.04s
0m00.16s  | categories/Cat/Cat                                                 | 0m00.15s || +0m00.01s
0m00.16s  | categories/NaturalTransformation/NaturalTransformation             | 0m00.21s || -0m00.04s
0m00.16s  | categories/Functor/Prod/Prod                                       | 0m00.21s || -0m00.04s
0m00.16s  | categories/Comma/Comma                                             | 0m00.19s || -0m00.03s
0m00.16s  | categories/Category/Univalent                                      | 0m00.18s || -0m00.01s
0m00.16s  | categories/InitialTerminalCategory/Notations                       | 0m00.16s || +0m00.00s
0m00.16s  | Tests                                                              | 0m00.15s || +0m00.01s
0m00.16s  | Overture                                                           | 0m00.14s || +0m00.01s
0m00.15s  | categories/Adjoint/Utf8                                            | 0m00.17s || -0m00.02s
0m00.15s  | categories/SetCategory/Core                                        | 0m00.16s || -0m00.01s
0m00.15s  | Misc                                                               | 0m00.14s || +0m00.00s
0m00.15s  | Modality                                                           | 0m00.24s || -0m00.09s
0m00.15s  | categories/Category/Subcategory/Wide                               | 0m00.12s || +0m00.03s
0m00.15s  | categories/NaturalTransformation/Notations                         | 0m00.16s || -0m00.01s
0m00.15s  | hit/TwoSphere                                                      | 0m00.16s || -0m00.01s
0m00.14s  | categories/Profunctor/Notations                                    | 0m00.14s || +0m00.00s
0m00.14s  | categories/Comma/Notations                                         | 0m00.13s || +0m00.01s
0m00.14s  | categories/Category/Category                                       | 0m00.18s || -0m00.03s
0m00.14s  | categories/Category/Subcategory/Subcategory                        | 0m00.10s || +0m00.04s
0m00.14s  | categories/SetCategory/SetCategory                                 | 0m00.10s || +0m00.04s
0m00.14s  | categories/Category/Notations                                      | 0m00.15s || -0m00.00s
0m00.14s  | hit/Truncations                                                    | 0m00.13s || +0m00.01s
0m00.14s  | categories/Adjoint/Composition/LawsTactic                          | 0m00.17s || -0m00.03s
0m00.13s  | categories/Profunctor/Representable                                | 0m00.16s || -0m00.03s
0m00.13s  | categories/Adjoint/Core                                            | 0m00.12s || +0m00.01s
0m00.13s  | categories/Structure/Structure                                     | 0m00.14s || -0m00.01s
0m00.13s  | categories/Profunctor/Profunctor                                   | 0m00.13s || +0m00.00s
0m00.13s  | categories/Category/Core                                           | 0m00.12s || +0m00.01s
0m00.13s  | types/Unit                                                         | 0m00.12s || +0m00.01s
0m00.13s  | categories/CategoryOfSections/CategoryOfSections                   | 0m00.14s || -0m00.01s
0m00.12s  | categories/Comma/Utf8                                              | 0m00.13s || -0m00.01s
0m00.12s  | categories/Profunctor/Core                                         | 0m00.14s || -0m00.02s
0m00.12s  | hit/Interval                                                       | 0m00.11s || +0m00.00s
0m00.12s  | categories/Category/Dual                                           | 0m00.13s || -0m00.01s
0m00.12s  | categories/InitialTerminalCategory/Core                            | 0m00.15s || -0m00.03s
0m00.12s  | categories/NaturalTransformation/Core                              | 0m00.15s || -0m00.03s
0m00.12s  | categories/Profunctor/Identity                                     | 0m00.11s || +0m00.00s
0m00.12s  | categories/NaturalTransformation/Composition/Composition           | 0m00.08s || +0m00.03s
0m00.12s  | categories/Category/Sigma/Sigma                                    | 0m00.14s || -0m00.02s
0m00.12s  | categories/Functor/Pointwise/Pointwise                             | 0m00.11s || +0m00.00s
0m00.11s  | hit/unique_choice                                                  | 0m00.16s || -0m00.05s
0m00.11s  | categories/FunctorCategory/Notations                               | 0m00.12s || -0m00.00s
0m00.11s  | categories/Profunctor/Utf8                                         | 0m00.12s || -0m00.00s
0m00.10s  | categories/DiscreteCategory                                        | 0m00.14s || -0m00.04s
0m00.10s  | categories/Category/Utf8                                           | 0m00.12s || -0m00.01s
0m00.10s  | categories/Category/Strict                                         | 0m00.08s || +0m00.02s
0m00.10s  | coq/Init/Peano                                                     | 0m00.12s || -0m00.01s
0m00.10s  | categories/ExponentialLaws/Law4/Law4                               | 0m00.11s || -0m00.00s
0m00.10s  | categories/Functor/Core                                            | 0m00.13s || -0m00.03s
0m00.10s  | categories/Structure/Notations                                     | 0m00.09s || +0m00.01s
0m00.10s  | UnivalenceAxiom                                                    | 0m00.11s || -0m00.00s
0m00.10s  | categories/Category/Subcategory/Full                               | 0m00.13s || -0m00.03s
0m00.10s  | categories/Structure/Utf8                                          | 0m00.11s || -0m00.00s
0m00.10s  | types/Empty                                                        | 0m00.08s || +0m00.02s
0m00.09s  | categories/GroupoidCategory/GroupoidCategory                       | 0m00.13s || -0m00.04s
0m00.08s  | Contractible                                                       | 0m00.10s || -0m00.02s
0m00.08s  | types/UniverseLevel                                                | 0m00.08s || +0m00.00s
0m00.08s  | Pointed                                                            | 0m00.07s || +0m00.00s
0m00.06s  | coq/Init/Datatypes                                                 | 0m00.06s || +0m00.00s
0m00.06s  | coq/Init/Specif                                                    | 0m00.06s || +0m00.00s
0m00.06s  | coq/Init/Logic_Type                                                | 0m00.07s || -0m00.01s
0m00.06s  | coq/Program/Tactics                                                | 0m00.04s || +0m00.01s
0m00.05s  | categories/Functor/Identity                                        | 0m00.08s || -0m00.03s
0m00.05s  | FunextAxiom                                                        | 0m00.07s || -0m00.02s
0m00.04s  | coq/Init/Prelude                                                   | 0m00.03s || +0m00.01s
0m00.04s  | coq/Init/Tactics                                                   | 0m00.02s || +0m00.02s
0m00.03s  | coq/Init/Notations                                                 | 0m00.06s || -0m00.03s
0m00.03s  | coq/Init/Logic                                                     | 0m00.03s || +0m00.00s
0m00.03s  | coq/Bool/Bool                                                      | 0m00.03s || +0m00.00s
WIP

WIP move to pseudofunctors

More WIP

Next step is to give versions of the lemmas for rewrite for the
inverses, and then do the same munging we did in the Grothendieck
construction here, for speed, to prove the identity laws.
Add some typeclass resolution hints for apply being stupid

[apply] doesn't know that, e.g., the identity functor applied to x is
x, nor vice-versa.  And because it infers arguments in the "wrong"
order, it errors before it has a chance to pick up that information.
So we need to help it along a little.
Add some convenience lemmas for removing isomorphisms
Finish lax comma categories
Move isomorphism-moving laws to the isomorphisms file