This patch creates base classes for full-frame operations:
- FullFrameOperation: Serves mostly as interface to require the implementation of update_memory_buffer and get_input_area_of_interest. All operations must implement these methods for the new system to work.
- FullFrameBufferedOperation: Create a full-frame buffer and divides pixels execution in tiles (Multi-Threaded). Inherits from FullFrameOperation and WriteBufferOperation. Uses write_partial_buffer mechanism.
- SingleThreadOperation: Create a full-frame buffer and executes pixels in one single tile. Inherits from FullFrameOperation and WriteBufferOperation. Uses write_full_buffer mechanism.
As output operations don't need output buffers, they'll inherit from NodeOperation and FullFrameOperation.