Optimizations & refactoring

Было проведено 3 оптимизации:

1. Во-первых, это из тех приложений, в которых выгоднее просто стереть холст и нарисовать заново, чем каждый раз очищать все фигуры. Был произведён отказ от `intersection: all` в пользу `intersection: full`

2. Во-вторых, закешированы в растре результаты отрисовки кругов в спокойном положении

3. В-третьих, оптимизирован `LibCanvas.Shapes.Circle.intersect`

Профилирование "до":
![profile-prev](https://f.cloud.github.com/assets/337677/55217/2c3cd29c-5abc-11e2-804a-a05befbd2c9e.png)

Профилирование "после":
![profile-curr](https://f.cloud.github.com/assets/337677/55216/2c386f7c-5abc-11e2-8782-1cec53abdb77.png)

Скорость отрисовки кадра увеличена втрое - с 45% до 15% загрузки приложения

Также проведён незначительный рефакторинг и пофикшено пару багов)