* Adds abstraction around boot time checks for database availability. * Addressed issues raised in code review.