posts model and tests and some crud