Implement ECustom annotation. Closes #531
Fix modifiers of generated class