I think I may have figured this out. I had been bumping into the same problem (stalling at the P2P connection) on some coins but not others. I finally realized I was wrong in an initial assumption...the P2P_PREFIX setting in bitcoin/networks.py is in fact a coin-specific setting -- which is logical, as the other settings in that file are coin-specific as well. In fact, it looks like it is basically the "magic value" or "magic number" referred to in
https://en.bitcoin.it/wiki/Protocol_specification, and after poking around in the code I think you can find it in main.cpp at pchMessageStart[4]=... Using this specific value as the P2P_PREFIX fixed the problem for me.
So, for example, I haven't ever installed Dragoncoin myself, but looking quickly at the relevant line in main.cpp:
unsigned char pchMessageStart[4] = { 0xfc, 0xd9, 0xb7, 0xdd };
Thus, for Dragoncoin, try setting
P2P_PREFIX='fcd9b7dd'.decode('hex'),
and let us know if that gets you past stalling at the P2P connection.
Hope this is helpful.