generic method split now returns Lists instead of ArrayLists
added a method to split a dataset into two parts of specified size
generating labeled only and EM learning curves in one pass