Added functionality to Pile and Player. Should not be throwing exceptions at random times. Clean up is still required.