implemented juliet components
refactored messaging to JSON encoding