Added UnmodifiableShortList a wrapper for a ReadableShortList so that casting a ReadableShortList back to a MutableShortList (when it is both, such as DumbShortList) won't happen.
All methods in HexFile that take Programmer as an argument are now static and will soon be moved.
Programmer-related functionality from HexFile moved to Programmer.