Re-factoring so that classification can cover many different things