Make selection singleton and move to separate project.
Progress commit.