Added type aliases and other little re-factorings

Also, now using FirstOrDefault to find the first DLX solution that is
cheaper than the base price (instead of cancellation). This will be
efficient when DlxLib 1.2 is available.