Renamed templates back to types for clarity. Removed unnessary helpers