An escrow smart-contract where a user can deposit a given SPL token and lock it for a given time
Use 'initialize' to lock tokens for an arbitrary number of seconds.
Use 'retrieve' method to get tokens back after a lock time is up.
- Add a proper time forwarding test
- Add 'should fail' tests