Enhancement api vault

- Refactor to use a Vault object
- Refactor to use a Project object that simply contains Vaults