Order + order type initial definition

Stable enough to be merged.
Is it really Drupal convention that the namespace corresponds to the module name or is it due to PSR autoloading? AFAICT it's the latter. If so, then my next question is: what is the reason for the module name being `snake_case`?