parrot-libgit2: Unified Build System

One of the objectives before the midterms was to unify the buildsystem. Earlier the build process consisted of a separate Makefile and a setup.winxed file, and yet manually required people to go and build Rosella themselves.

The Makefile is now a wrapper around setup.winxed. This will provide a unified buildsystem and hopefully will help other people, who want to help me or contribute to the project, to easily build parrot-libgit2.

The code does consist of an unhealthy amount of spawned shell processes instead of parrot ops. As I become familiar with more and more parrot ops, these will be slowly replaced. Some parrot ops such as unlink(it was unable to remove a symlink to a directory) were buggy, and this was a factor as well. They were, fortunately, easy to workaround. Limited winxed documentation was however the major impediment.

All other winxed projects, including parrot-lapack, parrot-gmp, cardinal, puffin, and of course the winxed examples had well-written winxed code which taught me a lot about winxed in absence of much documentation.

Which brings me to the topic of documentation. Documentation is critical for any project, and is often lacking in open-source projects. Good documentation for parrot-libgit2 is what will see it get used, and very soon there will be documentation on how to write example programs.

In other news, as announced earlier, libgit2 has been upgraded upstream to 0.19 and now the NCI defs reflect that, allowing me to close off this issue.