Bag Context Shape Grammar Implementation: From Theory to Useable Software