Added two hidden files I forgot in the initial import
Added empty README file to lib/util/c because git won't remember the empty c directory otherwise.
Added .gitignore
Added (non-working) WKPF code.

Most code commented out for now. Also added the GENERATEDWKPF.java until I include the proper code generation stuff.
Added test application for wkpf.
Added programflash.data produced by native build to .gitignore
Added -std=c99 compiler option for AVR architecture
Refactoring debug code to support multiple traces (currently darjeeling default and WKPF)
Small bugfix
Changed storage of wuclasses to be a linked list instead of a fixed length array.
Fixed REALLY hard to find bug in monitor/garbage collection code.

For some reason the object variable was copied into a local obj variable, which was then added to the safe pointer list. However, the rest of this function doesn't use the new obj variable, but the original object parameter. This means that if the garbage collector is triggered while in this function, the pointer in the new obj variable gets updated to the object's new location, but the original object parameter won't.
The result is a monitor is created for the wrong address. Then the next MONITOREXIT instruction will create yet another monitor and reduce it's count, which will loop around to -1/255. So we end up with two monitors that will never be destroyed again. For the second one (with count 255) this only wastes memory, but for the first we now have an invalid pointer. This will be ok for a while, but after each following run of the garbage collector, the address will be updated by some value determined by whatever happens to be there (which probably won't be a darjeeling heap chunk). This continues until the pointer runs out of the process' address space and we get a segfault.
Fixed LED constants in WuNodeLeds class.
Added hooks to let libraries hook into the garbage collector, and implemented GC for wuclasses.

Libraries need to add two function pointers to two GC hooks
 - one for the mark phase, which should mark any live objects (either black for chunks owner by the library itself, or gray for pointers to Java objects or system chunks)
 - and one to update pointers during the compaction phase. All data will still be at it's original location at this point, but any pointers need to be updated to the new location, which can be found using the dj_mem_getUpdatedPointer function.
Added code to maintain list of wuobject, and moved GC code to separate file.
Renamed wkpf_local_wuobject to wuobject_t and wkpf_wuclass_definition to wuclass_t.
Renamed the global lists wuclasses and wuobjects to wuclasses_list and wuobjects_list, and added code to allocate memory for an wuobject's properties.
Added code to get/set booleans and shorts from Java.
Added virtual Threshold class. Also added generated part for now since I didn't port the code gen yet.
Added function to load the links table.
Working on loading component map, but running into problems with multidimensional arrays. Broken for now, but just doing a commit to be able to revert easily.