Fix documentation, copy paste error from make-bounded-lattice
Fix error in make-bounded-lattice wrt meet and bottom

The meet of anything with bottom is always bottom.

  meet(bottom, x) = bottom
  meet(x, bottom) = bottom
Refactor make-bounded-lattice to expose a version which accepts tops and bottoms
Add primitive and derived truth lattices
Implement disjoint unions
Add disjoint union to provide list