Easy to unittest with controller by obtaining the model object from controller-specific factory method.
Add year, month, day to table tacks.
This change is to keep uniqueness of tack by db constraints.