TRUNK-4436: Drug orders for different formulations of the same concept

This is a fix for https://issues.openmrs.org/browse/TRUNK-4436
ObjectUtils.equals is also null safe.