Rather a rewrite for easier understanding (hopefully) and for adding more players easy (objects)