Calibration improvements

Merging solutions for system76/beansbooks#154 .  This does the following:
- Vendor Purchases are now mutable like Customer Sales.
- Sales and Payments can record payments before their creation date.
- Updates the underlying code that calibrates these forms and their journal entries to be greatly simplified and significantly more DRY.