Merged from combination branch. Improvements include speed of processing, result viewing, and information for the user.