Adding support for BPMN 2.0 workflow parsing and execution

Hi Samuel,

I'm sorry that this has taken me so long to get done! But I've finally got things to a state where I think it would be safe to pull.

Since you last looked at the code, I have removed the dependency on lxml for parsing - it now uses pure python (element tree).

I didn't get a chance to look into moving the "Sequence Flow" objects in to main library. Perhaps we can discuss that as a future enhancement?

Anyway, let me know what you think.

Kind regards,

Matt