Basic outline is done; TODO: check grammar/spelling