Add sequence diagram
Re-structure