A powerful and extensible constraint-based drawing editor