- Split up and group java classes into sub packages such as 'org.kde.koala.kparts',
	and 'org.kde.koala.kdecore'.

- Split up shared libs into smaller sub-libraries for faster loading, or write
	a 'kdejavainit' process in the style of kdeinit (could be a child of kdeinit?).
	It would need to load all the shared libs, have a JVM ready to roll straight
	into the main() method of the main class, and then fork() on demand...

- Integrate java apps with the KDE menu system, so they can be invoked just like C++ ones.

- Find any missing, but important callbacks (similar to KMainWindow::queryClose()).
	Add the callbacks to the relevant C++ 'JBridge..' classes, so java sub-classes
	can override them.

- Fix argument types like 'byte[]' which should be changed after a method call,
	such as DCOPClient.receive(). Currently the contents of the java byte
	array are written into a QByteArray before a call like receive(), but aren't
	copied back afterwards (so not much use at present!).

- Add Qt data marshalling, so that DCOP with non-QString arguments can be made to work.
	Convert '>>' to writeObject(), and '<<' to readObject() or similar.

- Port the code to a nifty PDA running embedded Qt/Linux. Remove any X11 specific methods.

