Added first (alias for orElse), last, append + more monoids
Refactor to make describe easier
Added Contains.describe
Added Partial.describe
Added Mapped.describe