adding purchase model and tests