1. A system for communicating data to and from a control and monitoring device, said system comprising: a controller coupled to and in communication with said control and monitoring device, said controller having a network connection; and software installed on said controller; wherein said software can read data from said control and monitoring device and receive messages from said control and monitoring device and further wherein said software can configure and send said data and messages to an application at a destination, in a format required by the application, via said network connection for automatic, direct connectivity between the controller and the application at the destination without manual intervention, wherein said software comprises a logic server for tracking changes in said data read from said control and monitoring device and for applying logical manipulations to said data read from said control and monitoring device, and an expression server for evaluating mathematical and/or logic expressions and using data read from said control and monitoring device, wherein said data is sent via said network connection upon occurrence of one or more configurable trigger conditions, wherein said configuring of said trigger conditions includes selecting information regarding the data to be sent, an event upon which the data is sent, a destination of said data, and the format in which said data is to be sent upon satisfaction of said trigger condition, and wherein the system further comprises one or more configuration files contained in non-volatile storage on said controller, said configuration files containing a record of all defined projects, transports and general settings, and further wherein said software can restore itself to a previous state using said configuration files upon recovery from a power fail condition.