Split Language Enum and Supoort

Due to simplicity reasons I split the functionality into a own class to keep the enum simpler