Refactor extraInfoExtractor

This PR slightly modifies `extraInfoExtractor` to change its signature.
Instead of taking of `(String, Status, Session, Request, Response) => List[Any]` function parameter, it would take a `ExtraInfo => List[Any]` parameter, with `ExtraInfo` being a class which holds the values for what were previously the parameters.