add first logic: interceptor for writing esi to response. context holding state per request. tests for context