Added the metaclass to setup the encoding list and ordering as well as set the default values to none