added comments
added comments
added comments
refactoring to create a one random ID generator method only
added comments across program
more comments and small refactoring changes
moved methods around
added a second constructor for the deserialization
reworked test-all green