TLVMsg and TLVList improvments

 * Change Vector to ArrayList (some performance boost)
   In most cases TLV operations are single threaded.
   So using Vector as contener with synchronisation
   is not required
 * Use foreach syntax if posible
 * Add modern List<TLVMsg> getTags() method
 * Override TLVMsg.toString() method
 * Enable packing TLVMsg with zero length (empty) value

Signed-off-by: Robert Demski <drdemsey@gmail.com>
TLVList, TLVMsg javadoc fixes

Signed-off-by: Robert Demski <drdemsey@gmail.com>