My preferred jQuery plugin pattern, adapted from Desandro and jQuery widgets