split test cases into multiple test modules
add parse test on linker flags
add documentation to analyze methods and rearrange them
CPS methods has return values to pass error codes