Split the code up into three files