About number 5 as wi-fi and bluetooth coop. which is impossible to be programmed, perhaps you should use node.js framework.
Overall about Multiplayer isn't going to be cheap work for everyone.
Why? It needs to implement extra features like disconnect recovery, desync recovery, fps control, etc.