Added Functional.hpp
Revert "Use fakeit:: namespace inside macros"

This reverts commit 0d3a9418f27d01edb5c189c185d5ba9c080f7498.