Files for python modules can be sent through mako

mako was chosen over jinja because it allows in-template logic. This makes
simple case easier. Though it is likely be better to separate logic and
templates in general cases.
Can now mako pyx files.

However, pxd files probably do not work yet, in that they are likely not found
by the other cython files.
Function to configure file in batches
Adding ability to mako files
Make configure_files a macro

Makes it easier to use.
Also corrects errors in unit-tests.
Simplifying python module functions

Configured files and makoed files should be handled externally.
Remove unnecessary files
Using OUTPUT filename form of add_custom_command in mako

This should make dependencies easier to handle in the general case.
However, if the output files are not used by another target, then an explicit
target should be created in the same directory as the mako command. See test
for example.
Globs are specifically as such

Otherwise, file that do not exist are silently erased in the globbing step.
By making GLOB a specific option, we can pass both globs and generated source
files.
Create filter_list and split_list utilities

These functions manipulate lists according to regexes.
The filter_list function originally resided in PythonModule.cmake.
Python headers are copied to include directory

This directory is in the python package. It makes it easier to include
mako-generated pxd files.
Bug corrections for mako
LABELS where missing from pytests