Initial version of libcontainer API.

Docker-DCO-1.1-Signed-off-by: Victor Marmol <vmarmol@google.com> (github: vmarmol)

This is an initial proposal of what a libcontainer API would look like. You can see it is in no way implemented :) This is primarily for discussion on the API, we can merge this and start working on the individual pieces one at a time.

The proposed API borrows heavily from lmctfy and libct with some changes to improve on those. Key aspects are:
- Container names as hierarchical path
- Separating Creating a container from Getting a container (the latter gets a reference to a running container)
- Containers as objects we can perform action on.

Any and all comments are welcomed :) I think the documentation on these may be a little lighter than I'd like. I can add more as it is requested.
Depends on what parts of that behavior you're interested in. Exec creates and starts a container, ExecIn runs something in an existing container. Exec -> Start and ExecIn -> RunIn. If you mean the actual exec as in execve*() then, no. It'd be a bit misleading since to enter namespaces we will have to fork so we can't really exec into. Is that what you were referring to?