start replacing with peermanager design