Change Logic to MVP

It my first experience in Model-View-Presentation model. So, I split
View on Visual and Logic component. Also 2D code was hidden.