Adding some fundamental pipelining in order to better understand and
organize the project.