4. ALMOST DONE - Add better exception throwing and handling
5. Finish adding comments for the other files.
6. ---DONE--- Fix the 'sendAll' and 'recvAll' methods in Sock. Instead of calling the parent function with a parameter in the children functions, set a variable in the children functions (set it to a different value in the 'Client' implementation and the 'Server' implementation). This variable can be accessed by the parent method, and it can perform the appropriate action.