fixes #145: create a browser bundle

I had to make a couple of API changes in order to remove filesystem-based code. Rules are now explicitly enumerated in `lib/rules.js`, and there is now a `define` function to extend the rules. I've also added an `eslint.defaults` function for retrieving the default options. To create the bundle, `eslint-min.js`, just run `npm run-script bundle`. When loaded in a browser environment, the library will expose itself as `eslint` on the global object. Let me know how you feel about the changes. I think this is a pretty good starting point.