Fix the rest of the Security Environment unit tests

This patch fixes the remaining Security Environment test cases so that
they will at least run. This has already turned up some
strange/inconsistent behaviour in the Security_Environment class and at
least one bug (incorrect usage of the bertlv_pack function in the
generate_public_key_pair method).