improve PBManager architecture and update tableview method