public override void Load()
        {
            Bind <IUserRepository>().To <UserRepository>();
            Bind <ICandidateRepository>().To <CandidateRepository>();
            Bind <IEmployeeRepository>().To <EmployeeRepository>();
            Bind <IVacancyRepository>().To <VacancyRepository>();
            Bind <IRoleRepository>().To <RoleRepository>();

            Bind <IUserManager>().To <UserManager>();
            Bind <IRoleManager>().To <RoleManager>();
            Bind <ICandidateManager>().To <CandidateManager>();
            Bind <IEmployeeManager>().To <EmployeeManager>();
            Bind <IVacancyManager>().To <VacancyManager>();

            Bind <IUserAppService>().To <UserAppService>();
            Bind <ICandidateAppService>().To <CandidateAppService>();
            Bind <IEmployeeAppService>().To <EmployeeAppService>();
            Bind <IVacancyAppService>().To <VacancyAppService>();
            Bind <IRoleAppService>().To <RolleAppService>();

            var sessionFactory = NHibernateHelper.Config(ConfigurationManager.ConnectionStrings["RecruitmentAgencyDb"].ConnectionString);

            Bind <ISessionFactory>().ToConstant(sessionFactory).InSingletonScope();//ToMethod(c => NHibernateHelper.Config()).InSingletonScope();
            Bind <ISession>().ToMethod(c => sessionFactory.OpenSession()).InThreadScope();
            //Bind<IValueResolver<SourceEntity, DestModel, bool>>().To<MyResolver>();
            var mapperConfiguration = CreateConfiguration();

            Bind <MapperConfiguration>().ToConstant(mapperConfiguration).InSingletonScope();

            // This teaches Ninject how to create automapper instances say if for instance
            // MyResolver has a constructor with a parameter that needs to be injected
            Bind <IMapper>().ToMethod(ctx => new Mapper(mapperConfiguration));

            Unbind <ModelValidatorProvider>();
        }