Fixed Attribute Access Issue on Card

Hi,

It turns out that #42 was due to access violation on readonly properties defined in class Card.  Initially, I fixed #42 with a dirty fix by allowing other classes direct access to the somehow private variables on aabe9be.  However, it's a bad design so I refactored the JSON deserialization so that direct access is limited within its own class (082135d).

Let me know if you want me to make additional improvements.

-KF