feat(routeProvider): allow fully injectable transition function

Basically it will take a similar form to `resolve`, and also be injected with locals $routeParams and $scope ($scope would be viewport's scope).

example: 
```js
$routeProvider.when('/page', {
  transition: ['$scope', function($scope) {
      if ($scope.$panel.right.opened) {
        return 'none';
      }
      return 'slide';
    };
  }]
});
```