Class per route+method

In general, I also think it's weird to use `set*` over just using the constructor *unless* you plan on setting the value again in the future or you need to lazily add a field. I'd love @ericmeyer's opinion on this.