Order + order type initial definition

Stable enough to be merged.
Can we fill-in this interface before merging?