Renamed "Complex" to "Composite" and "Value" to "Primitive" to better
reflex what them represents