Construct sourcesummarybuttons using a sourcedirectory

Signed-off-by: James Tasker <james_tasker1@hotmail.com>
Store sourcedirectories by Guid instead of title

Signed-off-by: James Tasker <james_tasker1@hotmail.com>