back to "name as you want" scheme, new connect method and socket based constructor