Refactoring libcontainer to avoid cyclic dependencies in the future.

This change will make future work inside libcontainer easier since the API is separated from the internal implementation.
the `MountConfig` param should start with a lower case `mountConfig` or just call it `config`