Ecosystems: A Functional Approach