typedef struct user_ {

  char *family_name;
  char *given_name;
  
} user;

typedef struct user_store_ {

  user          *u;
  unsigned int  size;
} user_store;


user_store* new_user_store();

user_store* add_user(user_store *store, char *fname, char *gname);

void print_user_store(user_store *us);

void free_user_store(user_store *us);

/*
 * macros to force/fake memory errors
 * 

#define malloc(b) ((b>2)?NULL:malloc(b))

*
*/

#define realloc(a,b) ((b>100)?NULL:realloc(a,b))

