Enhancement: Shell Cache

- Refactor: Moved some functionality from the Manager Serialization Test to the client_base so that we can use it for other tests, namely testing the shell cache which deals with serialization
- Enhancement: Added functionality to cache the Manager and Vault to disk
  - This is mainly for use between command-line instantiations so the user does not have to remember everything or be concerned with input/output functionality
  - Added appropriate testing
Did this b/c of the issue Derek Stritzel reported regarding Deuce's use of os.environ['HOME'] and building the Wheel Files.