refactor Vault classes