jQuery.fn.imageFade = function(settings) {
  
  settings = jQuery.extend({
     speed: 1000,
     pause: 3000,
     showFirst: 0
  }, settings);
  
  var shown = settings.showFirst;
  
  var sets = jQuery(this);
  
  if (sets.length > 1) {
  
    // We need to position-absolute the items so that they don't shift around as
    // some are removed.
    sets.css({position:'absolute'});
    
    // Hide all items, then show the first one.
    jQuery(sets.hide().get(shown)).show();
    
    var crossFade = function() {
      var next = (shown + 1) % (sets.length);
      jQuery(sets.get(shown)).fadeOut(settings.speed);
      jQuery(sets.get(next)).fadeIn(settings.speed);
      shown = next;
    };
    var looper = setInterval(crossFade, settings.pause);
  }
};