use lenses with PeerState
minor code clean-up refactorings:

* remove superfulous _ in data Peer

* close Executive & Peer exports
replace Package with Target in Executive API

* routing is more explicit
* Route constructor is closest to deliver/Routing
* local delivery is not guaranteed on a match the local peer
  is now just another candidate that can be matched and
  with more than one match, it may not be the one plucked
* accept Actionable in Executive API

also:
* add self to Peers list
* EitherT instances for MonadProcess, Logger