Toggle rewrote and more

Toggeling is now done in subsystem instead of in each command. States
are now retreived with Get() instead of keeping a variable for it