CMake'd procedure calling (issue #6) sources

  Added the source files and a few headers for the procedure calling classes,
  those being the Module and Call classes into the build system for CMake.
Added start of privae
Revert "Added start of privae"

This reverts commit 8f7111855f2aced506b7ad0d186e05d6095e18ac.

Didn't finish writing up this file.
Added private header for Module.

Signed-off-by: Jacky Alciné <me@jalcine.me>
Updated module heading, commented out not-working code at the moment.

Signed-off-by: Jacky Alciné <me@jalcine.me>
Added a pretty header for Call.

Signed-off-by: Jacky Alciné <me@jalcine.me>
Updated README with contrib info.
Added three new git hooks.

  Added two pre-commit git hooks that'd check for white spacing and check for
  a copyright year in each of the files being commited. Might need a bit of
  tweaking since some files might not be able to hold a copyright like the
  README for example.
Ensured proper object scoping of logs.
Added documentation to sources.
Added more logic for procedure calling.
Removed ZeroMQ discovery file.
Updated licensing.
Fixed a bit of formatting.
Updated test macros.
Updated targets for test/unittest.
Removed ZeroMQ discovery file.
Updated licensing logic.
Removed Ruby script for running tests for now.
Updated local Vim configuration.