Add full implementation of the five methods

These last changes include confusion matrices and a few tests for all
the methods, this also includes the creation and selection of the model
that I think I'll be using for my submission.