Limit a file to one type

Files should only contain one type.

For example:

  • An interface should be in a separate file to the implementation
  • Non-nested helper classes should be in a separate file in an appropriate namespace