Another commit in the way to objet orientation.

This commit moved the last synchronization time loading and saving out of
the class and into the command line script. The new settings model (using
an array instead of constants) is implemented as well.

The error handling that was working by return codes is now working with
Exceptions.

This code is not yet functional, all the other functions in the class need
to be adjusted and reworked.