add more comments to class code, add client example