An introduction to niche construction theory