[sb.v2] initial

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sb.v2] work in progress

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sb.v2] is_new_abi added

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sb.v2] Made is_new_abi a property and removed newly dead code

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sb.v2] Refactored a 'dependent_packages' property

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sb.v2] Refactored the state_map into something a little more maintainable

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sb] Pulled a bunch of the code out to modules under the sb directory

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sb] Broke the task handler methods out into their own classes

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sb/*] Various changes

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sru-workflow-manager] Refactoring to make sense of it all

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sru-workflow-manager] Using the WorkflowBug for pkg_name and pkg_version

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sru-workflow-manager] Refactoring, package_check now returns True/False depending on errors.

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sru-workflow-manager] Switching over to better argument parsing using argparse

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sru-workflow-manager] If 'sauron' is set, we don't care about the current state of the root task.

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sru-workflow-manager] Task search refactored out of the process_bugs method

The process_bugs method is big and complicated. I'm trying to reduce
it's complications by extracting out bits and pieces.

This change pulls out the code that calls LP to do a task search into
it's own funciton. That function just produces a list of the bug ids
that match the search criteria. The logic to handle a single bug is
also removed. Now that process_bugs processes a single bug (given it's
bug id) we don't have to do a task search when we just want to work
on a few, specified bugs.

process_bugs has been renamed to shank.

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sru-workflow-manager] Trivial: Moved main to the bottom of the class (where god intended main to live)

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sru-workflow-manager] Expanded WorkflowBug class with capabilities to determine if bug is 'valid' and build a list of tasks by name

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sru-workflow-manager] Trivial: Moved initialize to just before main and added some documentation to them both.

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sru-workflow-manager] Refactor: Pull the building of the 'tasksbyname' dictionary out of 'shank' and into the WorkflowBug

Signed-off-by: Brad Figg <brad.figg@canonical.com>
[sru-workflow-manager] Trivial: I prefer 's' instead of 'self' so I changed them all.

Signed-off-by: Brad Figg <brad.figg@canonical.com>