modified CompositeDataUnit to support encoding to fill empty space with
leading zeros (not leading zeros in the last element of the array)
added parameter checks to AtomicDataUnitFactory
added bitCount method to BitOperator
added bitCount to Extenstion
added CompositeDataUnitFactory