make: easifier usage of module subdirectories

Many modules have subdirectories. Often these subdirectories should only
be included under certain circumstances. Modules that use submodules
currently need to use this pattern:

```make
DIRS = …

all: $(BINDIR)$(MODULE).a
   @for i in $(DIRS) ; do $(MAKE) -C $$i ; done ;

include $(RIOTBASE)/Makefile.base

clean::
   @for i in $(DIRS) ; do $(MAKE) -C $$i clean ; done ;
```

This PR moves the `all:` and `clean::` boilerplate into `Makefile.base`.
make: remove the need for `Makefile`s in modules

After the previous two changes many module `Makefile`s only contained
the line
```make
include $(RIOTBASE)/Makefile.base
```

This PR removes the need for makefile for "standard layout" modules. The
module name is deduced from the basename, and no subdirectories are
included.