Changed trait pointer to be EOPpointer, to avoid macro conflict with libc++
Rename Assert macro to be EOPAssert
Rename IndexType to be EOPIndexType
Rename ValueType -> EOPValueType
Rename macro Codomain to be EOPCodomain
Rename InputType -> EOPInputType
Rename Domain -> EOPDomain
Rename DistanceType -> EOPDistanceType and QuotientType -> EOPQuotientType
Rename DifferenceType -> EOPDifferenceType and WeightType -> EOPWeightType
Rename IteratorType -> EOPIteratorType
Further macro renames
Final batch of macro renames