Add RC file support

This pull request adds support to configure the cache size and path with RC files. Settings will be loaded from the following files (in this order):

1. `INSTALL/nengo-data/nengorc`  (where INSTALL is the installation directory
    of the Nengo package)
2. A operating system specific file in the user's home directory.
   - Linux: `~/.config/nengo/nengorc`
   - OS X: `~/Library/Application Support/nengo/nengorc`
   - Windows 7: `%userprofile%\AppData\Local\CNRGlab at UWaterloo\nengo`
3. File given in the environment variable ``$NENGORC``.
4. nengorc in the current directory.

See `nengo-data/nengorc` for an example RC file.

This pull request addresses ctn-waterloo/nengo#349. It is based on the `cache` branch. Thus pull request #375 should be merged before this one. This pull request also changes the cache limit to disk space instead of number of files.
> Matplotlib does a very similar thing as this, but instead of having a precedence order, it just searches in the 3 locations and stops once it finds an RC file

I'm pretty sure that Git does the opposite: it takes settings from all the config files, as @jgosmann has proposed here. This is definitely more powerful, as you can have a bunch of general settings but then easily change something for one project if you want to. But it may be clearer to just use one file, as you're suggesting.

Can someone remind me exactly what these config files are for? We're trying to keep model-specific things out of them, right, and just have them do things like cache size? The nice thing about reading from multiple files is that if we have a bunch of defaults in the install config file, and the user wants to change e.g. cache size, then they just have to put a config file in their home folder that sets the cache size, and don't have to worry about copying the other settings.