1. An electronic device for data processing, said electronic device comprising: a processor; and a computer readable memory coupled to said processor and containing program instructions stored therein that when executed implement a method for enabling a dynamic and scaleable system architecture, said method comprising the steps of: a) detecting the availability of a new function; b) receiving an input interface specification for said new function; c) receiving an output interface specification for said new function; d) determining if a first available function has an output interface specification that is compatible with said input interface specification for said new function; e) determining if a second available function has an input interface specification that is compatible with said output interface specification for said new function; and f) selectively enabling said new function to receive data from said first available function and to supply data to said second available function if results from steps d) and e) are acceptable.