use unity to handle IOC since it can register interfaces. remove usage of SimpleIOC