/**
  * Register the service provider.
  *
  * @return void
  */
 public function register()
 {
     $this->app->bindShared('Aaronbullard\\Restful\\Responder', function ($app) {
         $responseObject = IlluminateResponse::getFacadeRoot();
         // Make adapter since Laravel's Response::json is static and cannot use $this
         $adapter = new LaravelResponder($responseObject);
         // Now decorate
         return new Data(new HttpCode(new Status(new Errors(new Meta(new Pagination(new Redirection($adapter)))))));
     });
     $this->app->bindShared('Aaronbullard\\Restful\\ResponderFacade', function ($app) {
         $responder = $app->make('Aaronbullard\\Restful\\Responder');
         return new ResponderFacade($responder);
     });
     $this->app->bind('Aaronbullard\\Restful\\ResponseInterface', 'Aaronbullard\\Restful\\ResponderFacade');
 }