Set: make the getWeight() function static

There is really no reason why it should not be.
SetCoverInstance: add support for reading from a stream
SetCoverInstance: disable implicit conversions

Do not allow implicitly converting bool to SetCoverInstance and int to
Set and SetElement.
removeUnnecessarySubsets: use bit masks

This implements a class BitSet that keeps subsets as bit masks.
Use it to optimize removeUnnecessarySubsets.
removeUnnecessarySubsets: optimize a bit more
removeSurplusElements: optimize using BitSetElement
LICENSE: add a section on debug.h imported from Workrave