Several classes added, created rough API outline, added basic read-only client