ImageSpiral is now ImageDiamond. Made AbstractAlgorithm an interface
instead. Begun implementation of randomness factor.