Allow config files to have any name (fixes #486).

Currently require is used to load and parse the config file. Unfortunately this forces the filename extension to be .json.

As discussed in https://github.com/eslint/eslint/issues/486, the consensus was that since config files should be JSON and not executable code, the .json restriction is unnecessary and it is preferable to parse the file ourselves instead of using require (which ultimately does exactly what this commit does).