Techland Interview Question

How would you approach engine/editor architecture?