Re-Implementation/Re-factoring of FeatureConstructor

-Changed feature vector from 2D array to 1D array
-Added function get_document_index that gets the document's index from
the feature_vector
-Feature vector now contains indexes of words instead of their
occurences
-Put the code for label extraction into its own function
-Document labels are now in a separate documents_labels array (instead
of being column 0 in the feature vector)
-documents_size array is now public to be used in the
NaiveBayesClassifier
-Added proper deallocation (Only feature constructor)
-All modules beyond FeatureConstructor do not work, and are commented.