added function for pigeonhole sort
Adding algorithms class and moving to OOP design.
This will facilitate efficiency analysis and implementation of parallel processing later.