I rearranged the project layout according to Tom's comment on the first commit.