testsuite: Add various test cases

Some are xfailed, some not, some existing ones get un-xfailed.
Oh, cool, I xfailed the wrong test, neat
testsuite: Make test main functions `pub`, to make Windows happy
auto merge of #5478 : catamorphism/rust/testcases, r=catamorphism

rs=more-test-cases-are-always-good Some are xfailed, some not, some existing ones get un-xfailed.