I wanted to hack on Cyanogen's SDK, but decided to modify their platform directly instead. It has always annoyed me that the navigation bar does not adapt to each application while other things (namely the statusbar) do.
How it works
My modification hooks into the core Android Activity.java file to modify the navigation bar on Activity creation, essentially allowing a separate navigation bar color per Activity. This means that for developers that implement different color schemes through their application, the navigation bar can be updated to match these changes and keep the experience as immersive as possible.