[FEDIZ-7] - Largish refactor of Fediz code to accomadate other protocols