orderable mixin, fields refactoring