Immediately hide or show commands.
Don't set command twice.
Clean up includes.
Minor improvements to build system files.

Allow disabling visibility.
Remove GTK type checks in release builds.
Check that all symbols are resolved in development builds.