First refactor to the DataSet interface into something that can be used from multiple kind of sources.
CHANCE Cleaning of the dataset implementations, improve the MySQL and TextFile DataSets.
ADD Subset constructor
OPT on the query generation
First refactor steps for the C4.5 algorithm
ADD factory method
ADD allTheSameOutput and allTheSame methods to the interface and implementations
ADD allTheSameOutput and allTheSame methods to the interface and implementations
CHANGE C4.5
Merge branch 'datasource_refactor' of github.com:kronenthaler/libai into datasource_refactor

Conflicts:
	src/libai/classifiers/refactor/DataSet.java
	src/libai/classifiers/refactor/TextFileDataSet.java
ADD Gain Information structure
ADD extra factories, the constructors will be turned package protected in the future.
CHANGE replaced the constructors for the factory methods
ADD all the same function for the TextFileDataSet
OPT optimizing the encapsulated field with final
ADD split function for the categorical attributes using the sorted array.
FIX the behavior of the functions to match the legacy ones.
OPT infoAvgDiscrete calculation
ADD lazy frequency initialization/retrieval
ADD getAccumulatedFrequency function to the dataset interface.
ADD implementations of the getAccumulatedFrequencies function