clone of NetworkManager, with my patches in separated branches