Refactoring of connection management
Refactoring of connection management

- Replaced peer service connection management:
  - New module peer_service_connections replaces the former process state data structure and the partisan_connection_cache module. It offers an ets-based solution with use of counters for quick node connection status check
- New API on partisan module that follows and tries to comply with the erlang.erl module. Several functions previously in partisan_peer_service, partisan_monitor and partisan_util are now in partisan.erl
- Fixed types specifications in various modules
- Fixed implementation of on_up/down for partisan_pluggable_peer_service_manager based on
- Fixed a bug in partisan_gen and partisan_gen_statem
- More robust implementation of monitors using the new subscription capabilities provided by peer service on_up/down.
   - monitor a node or all nodes
   - avoid leaking monitors
   - new supervisor to ensure the partisan_monitor is restarted every time the partisan manager is restarted.

Signed-off-by: Alejandro M. Ramallo <b6154369b0a4c0ea5058f92b158024642ed0e87c@leapsight.com>

lasp-lang/partisan