Make TAP parsing more complete/edgecase proof

- Handle skip testcases/testplans properly
- Handle TODO testcases properly

TODO:

Need to fix the testcases added for the SKIP/todo support in tap_inttest:

<pre># (cd /usr/local/tests/kyua-testers; kyua test tap_*test)
tap_inttest:top__missing_command  ->  passed  [0.009s]
tap_inttest:top__unknown_command  ->  passed  [0.008s]
tap_inttest:list__ok  ->  passed  [0.008s]
tap_inttest:test__pass  ->  passed  [0.011s]
tap_inttest:test__fail  ->  passed  [0.011s]
tap_inttest:test__bogus_plan  ->  passed  [0.010s]
tap_inttest:test__bogus_plan_negative_count  ->  passed  [0.010s]
tap_inttest:test__bail_out  ->  passed  [0.010s]
tap_inttest:test__crash  ->  passed  [0.023s]
tap_inttest:test__timeout  ->  passed  [1.032s]
tap_inttest:test__config_ignored  ->  passed  [0.012s]
tap_inttest:test__missing_test_program  ->  passed  [0.006s]
tap_inttest:test__invalid_test_case_name  ->  passed  [0.006s]
tap_inttest:test__skip_plan  ->  failed: atf-c/utils.c:392: exitstatus != WEXITSTATUS(status)  [0.008s]
tap_inttest:test__skip_testcase  ->  failed: atf-c/utils.c:392: exitstatus != WEXITSTATUS(status)  [0.009s]
tap_inttest:test__todo_testcase_not_ok  ->  failed: atf-c/utils.c:402: atf_utils_compare_file("atf_utils_fork_out.txt", expout) not met  [0.009s]
tap_inttest:test__todo_testcase_ok  ->  failed: atf-c/utils.c:402: atf_utils_compare_file("atf_utils_fork_out.txt", expout) not met  [0.008s]
tap_parser_test:try_parse_plan__ok  ->  passed  [0.004s]
tap_parser_test:try_parse_plan__skip  ->  passed  [0.004s]
tap_parser_test:try_parse_plan__reversed  ->  passed  [0.004s]
tap_parser_test:try_parse_plan__insane  ->  passed  [0.005s]
tap_parser_test:try_parse_plan__insane_ERANGE  ->  passed  [0.005s]
tap_parser_test:parse__ok__pass  ->  passed  [0.005s]
tap_parser_test:parse__ok__fail  ->  passed  [0.005s]
tap_parser_test:parse__fail__double_plan  ->  passed  [0.005s]
tap_parser_test:parse__fail__inconsistent_plan  ->  passed  [0.005s]
tap_parser_test:parse__bail_out  ->  passed  [0.004s]

23/27 passed (4 failed)
Committed action 118
</pre>