kunit: transition: add Kconfig option for test.h to use upstream names, start impl

Start with just changing `struct test` to `struct kunit`.

If this was defined as `typedef struct test test;` then a simple
`typedef test kunit.` would have sufficed.

But alas, there's no way to make `struct kunit` actually refer to
`struct test`.
So we define a KUNIT_T macro used by all internal files.
(We use a _T suffix so we can use KUNIT_CASE_T instead of KUNIT_CASE)

Since the type is passed into several macros, this requires reworking
them to expand their arguments before trying to concatenate them.

Users can now add
to their kunitconfig to build their code with the new names.
(Or change the default to 'y' when their code is ready).

Change-Id: Ie77fe1d731843b91c7cd2b2dc36e2cf74fadcc34
21 files changed