Revisit "Bug 741810 - Compilation fails because of creating .gnucash"

Use the temp dir as base dir for .gnucash
in all cases where the home dir fails. This
is more than just if the home directory doesn't exist.

Also don't attempt to create the home directory.
Fix typo in Transaction.c.

Thanks to Christoph Holterman for catching this.
Merge branch 'maint'