Separated the field 'value' of contexts into 'first' and 'rest'.

This yields more readable code, and it is even slighlty more
efficient.