I can help with testing, too - guess if you'll manage to find out how to compile them so they'll work, it will be a really useful base not even for twrp, but also for all the developers of custom kernels, who can start adding additional features, then, and there is a lot of job to do, starting from enabling kernel-based hotplug governor instead of qcom's mpdecision
Guess it will also be a good idea to first create an odin pack including stock-kernel/stock-recovery ONLY, to easily recover from any bootloop which may be caused during testing without need of flashing whole system. Anyone posted that before?
EDIT:
Well, I have created ones myself (credits to mkh.mourad for tool:
http://forum.xda-developers.com/showthread.php?t=2446269).
P905 Stock Recovery ODIN flashable:
http://www65.zippyshare.com/v/14010275/file.html
If during testing anything goes wrong, just flash this little tar in download mode and you'll be back to stock, again.
and in addition...
P905 Stock Boot/Kernel (XXUANC3) ODIN flashable:
http://www65.zippyshare.com/v/32441894/file.html
===
PS:
For developement purposes, I have recently found out the following:
- cache wipe
doesn't make any mess if after wipe you'll trigger the command:
restorecon -R /cache
please consider adding it somehow at the end of wipe algorithm...
- flashing various zips, especially containing modified libraries to be put in /system/lib (!), messes up selinux context labels for many files. For example: flashing GLTools is causing a bootloop BUT it's not the bad zip content but only wrong context for some files! We just have to trigger:
restorecon -R /system/lib
restorecon -R /system/vendor/lib
and everything is back to normal, with GL Tools working. The problem isn't ofc libs-exclusive... It might be good idea then to add - after flashing every zip - additional command to run by TWRP in background:
restorecon -R /system
it will set the /system labels just as they meant to be. BUT it will broke the su access! Why? See below...
- messing up su binary is caused by the fact that it is being set to its original context (u

bject_r:su_exec:s0), which is somehow restricted by samsung. During flashing su from genuine zip, the contextes are set again using chcon command - seems it's a good idea to set them automatically after flashing zips AND restoring global /system context (as described above) and also after every recovery session. They shall be:
su - u

bject_r:system_file:s0
daemonsu - u

bject_r:system_file:s0
sugote - u

bject_r:zygote_exec:s0 (the last one is a new binary, first introduced in supersu 1.99 recently,,,).
I believe it can be done by chcon command.