changed exception handling for several classes, exceptions are now thrown and handled in UI classes
added hamming distance and more to Challenge