Implements basic definitions and eliminators for finite types