build ramda.js from multiple source files

Compare the output of the following commands:

```command
$ ./scripts/build -- lib/head.js
```

```command
$ ./scripts/build -- lib/head.js lib/tail.js
```

```command
$ ./scripts/build --complete
```

__ramda.js__ is built by running the last of these commands. If the `VERSION` environment variable is set (by xyz, for example) its value is used in the version string in the header (see #617).

Modular builds have been discussed in #577 and elsewhere. This pull request gives us the ability to create extremely granular custom builds. Only the requested functions are exported, and functions not required by any of the requested functions or any of their dependencies are not included at all.

There is a reason, though, that I didn't entitle this pull request "support custom builds". We don't expect users to create custom builds by specifying hundreds of filenames. We'd like to support something like this:

```console
$ ./scripts/build --category logic --category math
```

That change should be fairly easy to implement, but I'd like it to be reviewed and discussed in a separate pull request once this has been merged. This pull request is already large enough!

I'll add further comments in situ.

> We're already performing this check as part of `make test lint`.

Unfortunately, that's not going to work for those running a nasty OS.  I usually run `mocha` for quick testing if I'm breaking things and then `grunt test` to make sure I pick up our linting and style-checking before I check in, I don't spin up a Linux VM just to do the build, and I would rather not insist that other users do either.