Implemented unittest_file_glob, pyfix_unittest_glob, and
integratedtest_file_glob.  Fleshed out tests for *_file_glob, refactored
to make a bit more DRY.

This implementation is intended to be completely backwards compatible
with 0.10.2, including at the function level in case any third parties
are directly invoking the underlying implementation.  There are three
new properties:

1. integrationtest_file_glob
1. pyfix_unittest_file_glob
1. unittest_file_glob

If a project sets one of the previous *_file_suffix properties, that
will override the matching *_file_glob property and log a warning that
*_file_suffix has been depricated.

At the implementation level, there are new functions that have "_method"
concatinated to the original function names: discover_files_matching,
discover_modules_matching, execute_tests_matching,
discover_integration_tests_matching.

The oringal function names that expect a suffix are still present and
functional but have been refactored to leverage the underlying
"_matching" function.
Fixed failing tests, ensured reverse compatibility.
Fixed discover_modules_matching() to only match python source files regardless of the file_glob.
PEP 8 compliance. Doh!
discover_modules_matching() adds '.py' to glob if needed, only matches '.py' files.
Renamed unittest_file_glob and pyfix_unittest_file_glob properties to the more correct unittest_module_glob and pyfix_unittest_module_glob. The final .py is no longer required (but OK if present). The integrationtest_file_glob property was left as is, since the integration tests really do run files (where as unittests import modules.)
Merge pull request #55 from markmevans/file_glob_feature

Implemented unittest_file_glob, pyfix_unittest_glob, and integratedtest_file_glob. Fleshed out tests for *_fileglob, refactored to make a bit more DRY.
v0.10.3
improving the custom pdoc task

* pygments is optional, but omitting it results in no syntax highlighting
  which is a huge step backwards. Pinning both pdoc and pygments to the
  build dependencies leads to a better out-of-the-box experience when
  generating html documentation.

* Checking the pdoc installation with an import, but then using the
  pdoc script was an unnecessary discrepancy. The installation check
  now verifies that the script is present and looks good instead.
always create an initializer when scaffolding

in the ideal case people will stick to the default values for unittest
and source folders.
PyBuilder is all about plugins though, and even people sticking to the
default values will want to configure their plugins sooner or later. In
that case it is best to have the initializer ready (but empty).
remove blank line at start of new projects
abide by flake8 in new projects' build.py
decouple initializer head and body

* now code can be added to the initializer without needing to change
  anything else
* there is no early return needed, all cases (initializer need / empty)
  can go through the full logic.
extract constants and method
ignoring vagrant and swap files
allow denying hardlink capabilities from distutils

This resolves issue #56.
The related stdlib bug is http://bugs.python.org/issue8876 , and once it
is closed and shipped to all python versions that PyBuilder supports,
this can be reverted.
As @markmevans found out, it is not possible to build a bdist when the
underlying filesystem does not support hardlinks, because distutils
assumes that it always does.

Setting the property `distutils_issue8876_workaround_enabled` to True
will deny distutils/setuptools the ability to use os.link and result in
copying files instead of hardlinking them.
DRYing the instantiation of a project in RenderSetupScriptTest
renaming to make test names consistent
Merge pull request #58 from pybuilder/feature/distutils_workaround

Feature/distutils workaround
v0.10.4