Add "--repo" argument
Move document package signing todo item
Add repository constants to PKGBUILD.py
Change unit testing priority todo

I also added a todo for detection of already built source code.
Refactor configure()

- Improved and increased argument conflict detection.
- Improved "--show-groups" handling and output.
- Improved argument help documentation.
- Added named argument conditions to the args namespace. This will allow
  quick checking of specific conditions setup by arguments passed by the
  user.
- Added "--repo" argument handling based on PKGBUILD.py constants. The
  REPO_GROUP string will be added to args.groups.
- Added check_pkgbuildpy_for_repo() function for verifying repo
  constants in PKGBUILD.py incase "--repo" is used.
- Removed the maintainer argument group.
Fixed misnamed attribute for repo_post_cb
Bugfix: __check_upstream_symlinks() logic bug

* Fixed logic bug involving os.path.lexists().
* Removed unecessary variables symexists and sympath.
Removed periods from logging output
hacking.rst updates

* Bugfix: A crash occurs when using "-rs --repo" and the build directory
  does not exist.
* Improvement: Delete __get_build_loop_dict() and move functionality
  back into __build().
* Mark various TODOs as DONE.
* Mark various TODOs as TODO.
* Add directory delete to test cases todos.
[DONE]: Delete __get_build_loop_dict()
Change shutil.move to shutil.copy
Add git branch documentation TODOs
Add doc todo about checklist section in hacking.rst
Add doc todo about git branch naming
Bugfix-DONE: "./build.py -rs --repo" crashes

The script was crashing due to makepkg trying to cd into a src directory
that did not exist. I added checks to _build() to look for this
directory. I also added a new key to the packages dict for the source
file basename separated from the extension to make usage easier.
TODOs update

- Add: Bugfix: todo for action argument priority fix.
- Add:Feature: proper exception support.
  - Add: Bugfix: import exception handling
- Add: Fix: log has too many arguments and should not be used to exit
  the script.
- Add: Support: Different upstream source file types.
- Add: Support: i18n.
- Add: Limit log output to 79 characters.
Merge branch 'bugfix_repack_no_build_dir' into repo_support

These changes are to fix errors produced my makepkg when attempting to use the
repackage action on a _build_ tree that had previously not been built using the
build action.

The fix was to check for the '_build_/<group>/<package>/src' directory that is
produced by makepkg when building code. If this directory doesn't exist when
attempting to use the repackage action, the 'cd' command in the 'package()'
function of the package's PKGBUILD would cause makepkg to produce an error.
This in turn would cause the script to exit, potentially stopping work that
couldv'e proceded like building the source packages.

In the future, this script will be changed to use proper exceptions and log()
will not be allowed to exit the script in case of errors. This was only meant
to be a quick hack, but it is now being abused.
Fixed: "--sources" in wrong order

When using the "-b" or "-r" actions, "-s" would sometimes complete
beforec builds and in other cases, after building. This patch makes "-s"
complete first always.
Merge branch 'bugfix_sources_order' into repo_support

Fixes "-s" action being completed before the "-b" or "-r" actions.
Refine repo todos

Also add a new todo for breaking up PackageGroup().__organize().