ZODB Components: Use pylint to report source code errors/warnings each time it is modified.
Arnaud Fontaine authored
Before, 'exec' was used but it is not safe as it executes the source code and
also not so useful as it stops at the first error. So, use pylint instead:

* Report errors and warnings (naming conventions could later be checked too).
* Allow to jump directly in Ace Editor to the message line/column by clicking on it.
* Define properly dynamic packages by setting __path__, otherwise pylint fails
  when a Component imports another one.

Also, split up consistency checking done in validated/modified state and
checking source code everytime the source code is modified:

  Source code error message was previously stored as a workflow variable,
  which didn't make any sense because user would only get error messages on
  Workflow transition, thus use existing Interaction Workflow to check source
  code and set newly defined error/warning properties everytime the source
  code is modified.
807e8ee9