Implement lock upgrade and can (maybe) avoid starvation with budtime
Add more test; only pass first test for now