Added mode to differentiate set/state type features.

Can probably start reviewing this. I still need to add different modes into the dictionary parsing test and make sure everything still passes. /cc @charleso 
Any reason for the inline properties? I don't mind, I just know IDEA is going to shit itself if I try to edit them. :)