Structural updates

Bug fixes
Possibility to make your own protocol