Loading
Interfaces + Factory pattern = Decoupled architecture