typedef struct {
  int elements;
  int maxSize;
  int dirty;
  void **array;
} *Array,ArrayStruct;

Array newArray(int maxSize);
void addToArray(Array array, void * element);
void freeArray(Array array,void (*freefunc) (void *));
void sortArray(Array array, int (*compare)(const void *, const void *));

