testsuite: separate testcases on log
testsuite: Add assert_return

Add assert_return to use in testcases instead of assert. The issues
with assert are:
	1) It's disabled when NDEBUG is defined
	2) Even if it's well supported by testsuite (the parent will
	   report the child died) it can't output any meaningful
	   error message
testsuite: Add basic tests for hash implementation

Far from complete, but already covers all internal APIs.