KitchenSync-core - A Java Library for Distributed Communication