Added signifigant comments to Client.js more to come