make unmodifiable
add hamcrest-core as a dependency