! http, can: support for custom status codes, fixes #564

Arguable points:
  - Which kinds of subclasses of StatusCode should be created for codes outside the 100-599 range? `HttpSuccess` or `HttpFailure`? Or a new one which would make pattern matching more awkward.
  - Should `int2StatusCode` be allowed for creating custom status codes? (I chose 'no', because in many cases it is more likely a programmer error)