Some cleaning-up

Separate the unit tests per implementation to maintain a better
readability. Move the comments from the source file into the header
file.
Add a simple matrix class

Add a matrix class to the project files which will be used for another
implementation of the fibonacci algorithms. It saves its contents using
a one-dimensional array and supports reading and writing access to the
elements at a given index.
Rename the files to better fit with the class definition
Add more functionality to the matrix class

Add a function to fill a matrix with zeroes und use it within the
constructor so we don't have any unitinialized values in a newly created
matrix. Also add a function to print a matrix' contents on the screen.
Add a static function to multiply two given matrices, returning a new
matrix as result.
Constructors, assignment operator, identity matrix

Add some more conventient features to the matrix, such as a copy
constructor, assignment operator and a function to transform a square
matrix into an identity matrix which will be used for exponentiation
later.
Matrix exponentiation and another fibonacci algorithm

Add a function to exponentiate a matrix in logarithmic runtime to the
IntegerMatrix class. Utilizing this function, implement another
algorithm computing fibonacci numbers in logarithmic time.
Add unit tests for the logarithmic implementation

Extend the test cases to test the new logarithmic implementation the
same way as the previous ones.
Two more fibonacci calculating functions

Add another two fibonacci functions. One uses the closed formula derived
from the matrix exponentiation form, calculating the results directly.
Its results are getting wrong at some point due to floating point
arithmetic. Another one uses a lookup table to return smaller values
previously saved in a array in constant time, otherwise falling back to
the logarithmic time implementation. I wanted to have the table
dynamically calculated at compile time but couldn't figure it out, so
instead the table is included directly.
Unit tests for the new fibonacci functions

Add unit tests for the newly implemented functions and the older
implementations as well. Some of them will fail - see the source file
for further explanations.