Organize the tests into modules loosely bundled as features

Our tests have started to grow into an unweildy monolithic scroll of code in *simple.js*, so I thought it would be handy to refactor it a bit.  This PR does two main things:

1. (Loosely) defines discrete features that we want to test
1. Modularizes the tests into files categorized by feature