Module pattern

I implemented your function using a pattern called `Loose Augmentation` as a way to not override the `$` object when creating your library's functions. It might be helpful when using other libraries that use `$` as a form of namespace, as jQuery, for example.

This [post](http://www.adequatelygood.com/JavaScript-Module-Pattern-In-Depth.html) describes this pattern and many others.