enable running as cron job
- the ignore list was a simple array which relied on the script looping.  Moved it into the sqlite db to persist.  Added "reconsider_after" (seconds) configuration option to expire entries
- added a lock file to avoid multiple copies running simultaneously