Вообще по поводу программы у меня есть следующая идея- дабы постоянно её не переписывать (например при изменении правил) или чтобы её можно было легко расширять, сделать в ней поддержку плагинов, то есть если нужно добавить какую либо функцию в программу её не нужно будет переписывать и соответственно заново качать, а стоит только написать отдельный модуль, который в дальнейшем будет подгружаться программой, а если ещё поднять ftp (эх мечты
) на который будут выкладываться модули, то можно реализовать загрузку и обновление этих модулей автоматически.