WIP: refactor and adding context object for passing to block methods.