Remove options `noemptylinemacro` and `nolinemacro`; add option `linemacro`

This only concerns the situation when `savemacro` is also passed.

When `linemacro` is passed, the macro expanded .mod file is the same as before

When `linemacro` is not passed, the macro expanded .mod file is equivalent to what it was before when both `noemptylinemacro` and `nolinemacro` were passed.

closes #44
closes #45
6 jobs for master in 4 minutes and 5 seconds (queued for 15 seconds)
Status Job ID Name Coverage
  Build
passed #14729
build_linux_32

00:00:41

passed #14730
build_linux_64

00:01:19

passed #14733
macOS
build_macOS

00:02:05

passed #14731
build_windows_32

00:01:52

passed #14732
build_windows_64

00:01:39

 
  Prepare
passed #14734
aggregate_builds

00:00:04