Currently our Configuration system is a singleton global to the JVM. This creates many restrictions on how users can configure their clients. It also creates challenges with the [client handshake](https://alluxio.atlassian.net/browse/ALLUXIO-3194) feature since master configuration may change, but all clients use and need to update the same singleton configuration on handshake.
The goal of this ticket is to support instanced configuration within the client. We should implement it in a way that can be later extended to use instanced configuration throughout the codebase.