implemented some basic networking