Algorithms used in the Airborne Lidar Processing System (ALPS)