add explicit virtual destructor to prevent warning

warning is: deleting object of polymorphic class type 'X' which has non-virtual destructor might cause undefined behaviour [-Wdelete-non-virtual-dtor]
define seed to prevent compilation warning
make modifications to squelch compiler warnings

create intermedate variables of appropriate type to prevent "comparison between signed and unsigned expressions [-Wsign-compare]"
remove unused variables to prevent unused variable warnings
make modifications to squelch compiler warnings
comment out assert_state_consistency()
Merge branch 'compilation_warning_cleanup' into ordinal