  
  [1m[4m[31m5. Development History[0m
  
  
  [1m[4m[31m5.1 Versions of the Package[0m
  
  The  first version, [1mGraphGpd[0m 1.001, formed part of Emma Moore's thesis [M01]
  in December 2000, but was not made generally available.
  
  Version 1.002 of [1mGraphGpd[0m was prepared to run under [1mGAP[0m 4.4 in January 2004;
  was  submitted  to  the [1mGAP[0m council to be considered as an accepted package;
  but suggestions from the referee were not followed up.
  
  In  April  2006  the  manual was converted to [1mGAPDoc[0m format. Variables [22m[32mStar[0m,
  [22m[32mCostar[0m  and  [22m[32mCoveringGroup[0m  were  found  to  conflict  with  usage  in other
  packages,     and     were     renamed    [22m[32mVertexStar[0m,    [22m[32mVertexCostar[0m    and
  [22m[32mCoveringGroupOfGroupoid[0m respectively. Similarly, the [22m[32mVertices[0m and [22m[32mArcs[0m of an
  [22m[32mFpWeightedDigraph[0m were changed from attributes to record components.
  
  In the spring of 2006 the package was extensively rewritten and renamed [1mGpd[0m.
  Version 1.01 was submitted as a deposited package in June 2006.
  
  
  [1m[4m[31m5.2 What needs to be done next?[0m
  
  Computationally, there are three types of connected groupoid:
  
  --    those with identical object groups,
  
  --    those with object groups conjugate in some supergroup,
  
  --    those with object groups which are simply isomorphic.
  
  [1mGraphGpd[0m  attempted  to implement the second case. [1mGpd[0m 1.01 restricts itself
  to the first case. [1mGpd[0m 1.02 will extend 1.01 to the second case.
  
  Here are some other immediate requirements:
  
  --    normal subgroupoids and quotient groupoids;
  
  --    more  methods  for morphisms of groupoids, particularly when the range
        is not connected;
  
  --    [22m[32mImageElm[0m  and [22m[32mImagesSource[0m for the cases of groupoid morphisms not yet
        covered;
  
  --    [22m[32mEnumerator[0m for [22m[32mIsHomsetCosetsRep[0m;
  
  --    free groupoid on a graph;
  
  --    methods   for   [22m[32mFreeProductWithAmalgamation[0m   and   [22m[32mHnnEntension[0m   for
        pc-groups;
  
  --    convert      [22m[32mGraphOfGroupsRewritingSystem[0m      to     the     category
        [22m[32mIsRewritingSystem[0m;
  
  --    in [1mXMod[0m, implement crossed modules over groupoids.
  
