Decouple apiserver from codec implementation

The apiserver on initialization must be provided with a codec
for encoding and decoding all handled objects including api.Status
and api.ServerOp.  In addition, the RESTStorage Extract() method
has been changed to New(), which returns a pointer object that the
codec must decode into (the internal object).  Switched registry
methods to use pointers for Create/Update instead of values.
Merge pull request #807 from smarterclayton/abstract_apiserver_encoding

Decouple apiserver from codec implementation
Delete containers for a pod if we have to create the network container.
Add a link to the HTML-ified API Documentation.
Point the docs at a specific API html revision.
Update README.md
Merge pull request #830 from brendandburns/net

Delete containers for a pod if we have to create the network container.
Add container hashing to the container name, and restart containers on changes.
Centralize path magic in apiserver into the New method

Make OperationHandler and WatchHandler properly encapsulate their
concerns and make them not depend on the global path
Merge pull request #835 from smarterclayton/apiserver_cleanup

Centralize path magic in apiserver into the New method
Add more parameters to Watch

* Add labels selector (same as List)
* Add fields selector
 * Plan to let you select pods by Host and/or Status
* Add resourceVersion to let you resume a watch where you left off.
Allow more general parameters to be made by client. Also fix style and comments.
Add fake client to make testing easier.
Add WatchReplicationControllers to kubecfg's fake
Make replication controller use client
Simplify ResourceWatcher interface to one function.
Prevent accidental setting of sync or timeout
Merge pull request #827 from brendandburns/kubelet

Add container hashing to the container name, and restart containers on changes.
Merge pull request #805 from lavalamp/serverWatch

Improve watch
Insert gofuzz as dep