Split unittests into seperate files

Status Job ID Name Coverage
  Test
passed #1080
Linux
clang-c++11

00:01:58

passed #1082
Linux
clang-c++98

00:01:37

passed #1079
Linux
gcc-c++11

00:02:47

passed #1081
Linux
gcc-c++98

00:02:24

passed #1083
Apple
macos-c++11

00:01:40

passed #1084
Apple
macos-c++98

00:01:36