raft: add removed

The usage of removed:
1. tell removed node about its removal explicitly using msgDenied
2. prevent removed node disrupt cluster progress by launching leader election

It is set when apply node removal, or receive msgDenied.

#1016 
TestRemoveNode tests that removeNode can update pendingConf, nodes and the removed list correctly.