Design a package installer with dependencies | Amazon Interview Question