Apply error handling

Output of applying the config will be now human readable. 
Apply function now returns list of apply results for every item in the config and error.
ApplyResult contains a list of errors which may occur during the item creation process and a status, which is a string which will be printed as a result of the process.

Example:
`Succeed to create Pod of 'id=redis-master-2'`
`Failed to create Route of 'id=frontendroute' : route "frontendroute" already exists`
`Failed to create Service of 'id=frontend' : service "frontend" already exists`

More detailed output, with listed errors from the creation process will be printed if `--verbose` flag is added to apply command.

`func FindID` has been added and into `k8s/pkg/runtime/scheme.go`, and after review I will create an PR which will add it into upstream k8s. Another possible solution is to put it in `config.go`

If we need a k8s function for this, it should be called `DataID()` and `ObjectID()` for consistency, see:
https://github.com/GoogleCloudPlatform/kubernetes/blob/master/pkg/conversion/scheme.go#L261
https://github.com/GoogleCloudPlatform/kubernetes/blob/master/pkg/conversion/scheme.go#L275