update dependencies to latest

Better PR with tests passing and the required changes that you requested.