A major cleanup, disentangling net_if and ssl_if.
Pulled a lot of common logic into the core and reduced size of net_if implementations.
CL: Mongoose net_if and ssl_if refactoring
PUBLISHED_FROM=29bd4dcb264a1fd96b3dd164e2d880e1c2c0921e
E.g. if `ASSERT_EQ(myfunc(), 123)` fails, `myfunc()` would be invoked again to print the actual value.
This can cause confusion sometimes.
To avoid this, we cast arguments to double, which is wide enough for most cases and we provide a variant for 64 bit value types for when it's not.
We also perform a check and fail if argument to the check results in loss of precision.
CL: none
PUBLISHED_FROM=a14551289d92e8a5dead21d16471ebddebe938a8
To properly fail a test in a subroutine, return value needs to be passed up.
This snippet makes it short.
PUBLISHED_FROM=2f6328b5eb2921a4caa53d8887c02f73a5d817ea