added duration key which would specify a delta. Both it and expires now use steady_time under the hood
added duration argument and rely on Mojo::Util::steady_time for resilience to time jumps