Break out classes into individual files.

Adjust tests to reflect this.