Issue 125. changed Custom Fields to be a Set instead of List

to avoid "duplicate ID" exception when several custom fields
with the same ID are added to the list due to programmer's error.

Closed direct access to CustomFields in Issue and User classes.

Added Fest Assert library to use assertThat() style assertions in tests.