YourChat, a media-driven chat project application developed in Java, aiming for high modularity