Scheduler plugin configuration

Refactor scheduler factory to use plugins style similar to credentialprovider and cloudprovider for configuring priority functions and fit predicates.
On the import of the package, the init function is called [here](https://github.com/GoogleCloudPlatform/kubernetes/pull/2825/files#diff-eefd551b184909a2545b2ba3870e1f3fR26) which has the effect of registering the predicates. This is similar to the pattern of registering the cloudproviders https://github.com/GoogleCloudPlatform/kubernetes/blob/master/cmd/kubelet/plugins.go.