Move terrain generation into a separate sub-plugin