public function handle($command)
 {
     // @todo check whether or not registration is open (config)
     // Create a new User entity, persist it, and dispatch domain events.
     // Before persistance, though, fire an event to give plugins an
     // opportunity to alter the post entity based on data in the command.
     $user = User::register(array_get($command->data, 'username'), array_get($command->data, 'email'), array_get($command->data, 'password'));
     event(new UserWillBeSaved($user, $command));
     $user->save();
     $this->dispatchEventsFor($user);
     return $user;
 }