updates to mask, fromNSQ, and added last_state

Mask now does not require each and every key to be declared and instead the inclusive {} notation can be used. 

Previously, If you wanted all the child keys from key "a" in {"a:{"b":1:"c"2} you would need to write {"a":{"b":null,"c":null}} as the rule. Now you can just write ("a":{}} to copy over all child values of "a"

Null is no longer a valid value for a mask key so this will break older configurations of the mask block. 

fromNSQ now allows you to set a channel name so that you can have multiple fromNSQs reading from the same topic

last state is a stateblock that simply stores the last message.