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.
I think getting rid of `$NENGORC` seems good, as it's a bit redundant.  I might also take out the user level RC file.  I always find it a bit irritating when programs have config files scattered throughout the OS.  It's easy to forget about them, or forget where they are.  If the user wants to make system-wide changes, they can still do that by changing the file in the nengo directory (a natural place to look, and a folder we already "own").  The only downside of this is that it overwrites the Nengo defaults (assuming we move things out of `runcom.py` into the rc file), but if the user is making system-level changes that's what they want anyway.

It is handy to be able to set project-level settings though (e.g., you could specify a different decoder cache for each project, rather than having them overlapping).  So I like having a project-level file.  And again, that file is going to be right there in the project folder, so it'll be self contained and easy to track down.