kinda applied the patch
fix stuff
fix syntax error
fix merge conflict
state is optional
fix language.module language manager
fix plugin manager and argument order
fixing unit tests and user negotation
fix negotation 'unit' tests
fixing lots of tests
improvements
clean-up
revert language default changes
remove code
move stuff into the language manager