Add a strongly typed error for unrecognized kind/type/version
Use if err := ; err != nil instead of two lines
Shrink runtime.TypeMeta to be equivalent to api TypeMeta

Remove unused fuzzing
RawExtension was not properly marshalled

MarshalJSON can't use a pointer to a struct for RawExtension:

http://stackoverflow.com/questions/21390979/custom-marshaljson-never-gets-called-in-go
Allow conversion between []runtime.Object and []runtime.RawExtension

This allows generic lists with unrecognized objects to be roundtripped
between internal and external objects.
Add a List type that can contain arbitrary objects

Supports objects that the core schema may not recognize and
preserves them unmodified as runtime.Unknown
Do not consider an empty string to be an error in list.go
api: add container's id to ContainerStatus

Sometimes for external applications it is useful to correlate the pod
containers to the real docker instances.

This patch adds a new entry in the container status (containerID) which
is used to identify the instance.

Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
Merge pull request #2786 from smarterclayton/load_opaque_objects

Allow runtime.Object to be encoded as runtime.RawExtension
Merge pull request #2808 from simon3z/master

api: add container's id to ContainerStatus
Merge pull request #2814 from satnam6502/list

Do not consider an empty string to be an error in list.go