Used a "crystal type" enumerator to help generalise things for later.