Allow clients to determine the difference between create or update on PUT

PUT allows an object to be created (http 201).  This allows REST code to
indicate an object has been created and clients to react to it.

APIServer now deals with <-chan RESTResult instead of <-chan runtime.Object,
allowing more data to be passed through.
Merge pull request #1782 from smarterclayton/allow_put_to_set_create

Allow clients to determine the difference between create or update on PUT