require all files automatically
introduce settlement singleton