General Lattice Theory