1) Parser component
2) Generic Template Visitor
3) Single Ivy instance per dependency