0.7.2
-----
- Fix bug in calculating bounding box for rotated text
- Few minor updates

0.7.1
-----
- Views no longer lose reference to canvas on unrealize()
- bug fix in log message

0.7.0
-----
- Painters are bound to a specific view, like tools
- Introduced aspects for finding items and handles
- New feature: Guides, for aligning elements
- Free hand drawing style

0.6.0
-----
- Handlers are no longer called recursively for observed methods/properties.
- removed enable_dispatching() and disable_dispatching() calls.
- Made aspect code simpler.
- Moved disconnect code from tool to aspect, as stated in Aspect's docstring.
- Fixed issues in connections.
- Lot's of fixes and testing has been done on the undo mechanism.

0.5.0
-----
- Split tools in tools and aspects, separating the _what_ from the _how_.
  For this, a dependency to the simplegeneric module is introduced.
- Renamed VariablePoint to Position.
- Handle is no longer inheriting from VariablePoint/Position.
- Handle connections are no longer registered on the handle, but are
  maintained in the Canvas instance. This makes for much easier querying
  (e.g. which elements are attached to some element).
  Added a Table class to support this functionality.
- Added a timeout property on the @async decorator. The method is invoked
  the amunt of milliseconds after the first invocation.

0.4.1
------
- Call Item._set_canvas after matrix update
- Verify if value changed before marking variable as dirty.

0.4.0
------
- allow to define connectable parts of item's (ports feature)
- implemented default connection tool (thanks to ports feature)
- line segment tool implemented (code taken from gaphor)
- implemented Item.constraint method to simplify item's constraint
  creation
- The canvas (-view) is no longer tied to the (0, 0) position. Scrolling can
  be done quite fluidly with the new PanTool implementation.
- API changes
  - use positions instead of "x, y" pairs in all method calls
