Moved core Ecology code to Shared

This now matches the theory fairly well.  Now, we'll see if it actually
works...