Commit list database implementation

Added virtual User_Changes join table for multi-table querying support
Projects table: Add full path as PK column due to sqlite database limitations and foreign key constraints
Other database updates (table updates and actually dropping all of the created tables on upgrade)
Use changeID instead of legacy commit id for querying full change details
CommitterObject: Add equals method to optimise insertion of users during commit processing
Projects Sync: Always sync if there is no projects (in case something goes wrong)

Change-Id: I738fcdfff471b70cb3620997a4a7b34f1356d720