Add method to test if BB ends in Ret
Add final Ret if function doesn't end in one
Update test outputs to take into account final ret
Add default constructor for Ret

Functions may not always return an argument
Use Ret default constructor where appropriate
Add method to BasicBlock to test for final End
Generate End instructions for main procedure

If there is a return statement in the main procedure, it will result in
an end instruction, if the final basic block of the main procedure
doesn't end with an End instruction, one will be inserted.
Change what NoArgInstruction returns for its args

Return an empty ArrayList instead of null.
Update reference test outputs for end in __MAIN__