Separated database, ledger into separate units

Moved ledger related objects into paLadger unit for enhanced
encapsulation and readability.  Moved global database objects into
paDatabase unit.
Added paCalculator unit / TDrCrCalculator Object

Added unit and object to do proper Dr/Cr calculations.  Updated Ledger
objects to write the DrCr status information to the database, and
Journal Entry objects to calculate and store it in the ledger objects.
Ledger balance is now updated correctly after entering a new
transaction.
Journal Entry Corrections

Added real code to properly implement the following:
1. Account numbers added to Journal Entry Detail
2. Amount stored only on the proper side in Journal Entry Detail
3. Data Entry date filled in automatically in Journal Entry Detail.