memoize shortcuts initialisation
memoize shortcuts initialisation

I find it easier to keep the hash initialisation separate so that
the `shortcut` method doesn't need to worry about the its state.
CPlus/paypoint-blue,CPlus/paypoint-blue