React tables

I've moved the Students table over from using FilterTable/Prototype to React.js. This is better for several reasons, but the biggest is probably speed. Constructing the table is no longer done one student at a time and server-side, but instead client-side and in one batch. I've also created some generalized table components such as the search bar and table header so hopefully it shouldn't be that hard to define what your table row should look like and then just drop that into a table. Some work still needs to be done on that end though, which I'll probably end up doing when migrating the other tables over to React.
This could be more width-efficient if we indent the key-value list 2 spaces after `s['notes_link']` so we don't have to wrap the key-value pair.
```
s['notes_link'] = url_for(
  controller: 'notes',
  action: 'notes_dialog',
  id: student.id,
  ...)
```