Update Specification.java

add comparable implementation
add enumeration for partition sub-type
add relation to group