This is all my work so far. First proper commit