these classes are really not made for reusability. thus they should only be built into the applications.