Lots of changes happened in this commit.
- Refactored Option<T> class.
- Started to redesign command model of CodeSharper.