Add struct population_config

Should use this struct to encapsulate all the population related
functions and population details into this struct, rather than scatter
it around in the general config struct.
Begin incorperating struct population_config
Add struct population_config functionality

The struct population_config aims to encapsulate poulation functions and
intial generation details.