Fix #227 .less files not being auto-recompiled

Quick googling turns up hundreds of wrappers around fs.watch() that
watch recursively, as well as doing lots of unnecessary stuff like
allowing globbing paths, all of which are also hundreds of lines long.

The fs.readdir() trick is from isaacs' filewatcherthing:
https://github.com/isaacs/filewatcherthing/commit/740c76db4bcfd96bb087eca7f47d02828df2788d

I'm not sure why isaacs guarded against '.' and '..', fs.readdir()
supposedly (and empirically) excludes them:
http://nodejs.org/api/fs.html#fs_fs_readdir_path_callback
test_server.js: watcher updates dir's known files #ImAnIdiot

Rather than, files that are new in a directory since `make server` first
started, being rewatched every time any change happens in the directory.
Merge pull request #228 from mathquill/build.watch-recursively

Fix #227 .less files not being auto-recompiled
Change license from LGPL to Mozilla Public License

I technically wasn't complying with LGPL in the first place, since I
didn't include a complete copy of the license; MPL just requires I link
to it, as I do now.

Besides the pretty website, MPL is just shorter, simpler, and easier to
understand.
Merge pull request #283 from mathquill/docs.license

Change license from LGPL to Mozilla Public License
Merge remote-tracking branch 'upstream/master'