Cleaned up Tournament Code. Split functionality of Tournament in 3 different classes