Refactor 1st

#77 

[![UML-like sequence diagram](https://raw.githubusercontent.com/Kuniwak/vint/diagrams/seq_diagram.png)](https://raw.githubusercontent.com/Kuniwak/vint/diagrams/seq_diagram.png)