java-design-patterns com.iluwatar 1.16.0-SNAPSHOT 4.0.0 marker junit junit test