Refactor generator functions, add mountain generation