1. A system for condition monitoring and fault diagnosis comprising: a first controller having a processor configured to perform a data collection function that acquires time histories of selected variables for one or more of the components according to specified sampling parameters; a second controller having a processor configured to perform a pre-processing function that calculates specified characteristics of each of the time histories individually; a third controller having a processor configured to perform an analysis function for evaluating the specified characteristics of each of the individual time histories to produce one or more hypotheses of a condition of the one or more components; and a fourth controller having a processor configured to perform a reasoning function for determining the condition of the one or more components from the one or more hypotheses; wherein at least one instance of each function resides in progressively higher level controllers within a machine being monitored such that data required for health monitoring and fault diagnostic purposes are used at a level where intelligence to process that data is present.