Also the logic for handling SAMP_HUB needs to be factored out but that's probably old news. Again sorry if I haven't even seen your existing todo list :)