Add EventQueue and refactor LBManager to use client/cache