The system of claim 39, wherein said performing type checking to determine whether the method or property is valid for the second hardware device class comprises: determining a list of valid methods and properties for the second hardware device class; and determining whether the method or property is included in the list of valid method and properties.