Laravel.io
<?php namespace ServiceRunner\Auth;

use Illuminate\Auth\Guard;
use Illuminate\Support\ServiceProvider;
use ServiceRunner\Auth\ServiceRunnerUserProvider;

class AuthServiceProvider extends ServiceProvider {

    /**
     * Indicates if loading of the provider is deferred.
     *
     * @var bool
     */
    protected $defer = false;


    /**
     * Boot Provider
     * @return void
     */
    public function boot() {

        $this->package('servicerunner/auth');

    }


    /**
     * Register the service provider.
     *
     * @return void
     */
    public function register() {
        
        $this->app['events']->listen('Illuminate\Auth\AuthServiceProvider', function () {
            $this->app['auth']->extend('servicerunner', function($app) {
                $model     = $app['config']->get('auth.model');
                $Provider  = new ServiceRunnerUserProvider(new \Illuminate\Hashing\BcryptHasher, $model);
                return new Guard($Provider, $app['session.store']);
            });
        });

    }
}

Please note that all pasted data is publicly available.