Check while configure if SWIG, GSL and GLU are present. If not, disable Physiks from compilation.

1) Ensure that EM and gravitational field perturbations travel at c. Younglings must not observe ``spooky action at a distance" (at least not until this project grows a QED component!).

2) A cool thing to have would be electric circuit analysis/simulation. Spice and XCircuit have a steep learning curve, so PhysiKs could be more user-friendly alternative.

3) I'm debating whether or not to work on an XML simulation specification format for PhysiKs. Sure, Python scripts are nice and neat, but something more practical needs to be offered.

4) Here's a biggie: Collision Detection. Either read up on efficient algorithms or lift code from ODE.

5) Electromagnetic interactions beyond simply Biot-Savart and Coulomb point charge stuff.

6) Learn how to make SWIG, C++ and Python work in harmony. This means enabling generator-based iteration over a Universe's objects, and ensuring that the Python module is immune to flaky segfaults (e.g. a user inheriting one of the builtin classes), among other unforseen things. This is not of great importance, but would be pretty cool to have.

7) [WORK IN PROGRESS] Make an OpenGL/Qt user interface demonstrating correctness of the framework functions. More importantly, this interface should be the primary simulation interaction method for students. Ideally, one could drag-and-drop particles, spheresand other objects into a graphical viewing space and these actions would automagically generate easily editable script code. This GUI would also serve as the most important simulation presentation tool.

8) Preserve the namespace hierarchy in SWIG generated wrapper code. SWIG's default behaviour is to flatten namespaces, which presents problems with name collisions and general script API ugliness. The SWIG docs don't mention in-depth methods of accomplishing this, but creating separate *.i files for each namespace was briefly suggested.

9) Ensure that only the scripting essentials are visible to users. For example, the end-user does not need to access the collision detection functions.
