add a few dependencies. start on population algorithm