Clean up test suite

The test suite contains a series of tests that either do nothing (and thus
should not exist) contain tests that are broken due to refactoring, or
have become broken and obsolete.

Tests that could not be fixed within 10 minutes have been disabled and
should be fixed as part of the serialization refactoring.
Add references to file descriptor and line numbers

Elements that are directly contained in a file (such as constants, functions, classes,
interfaces and traits) should have a back-reference to their respective file descriptor.