Redmine bug 1231: SSL state negation - v1.

Support negation of ssl_state arguments.

First this required the current state being passed to the ssl_state match function instead of the cumulative state, otherwise ssl_state:client_hello would also match after while in the state server_hello.  Note that this patch is a bit naive as I don't know the SSL protocol that well, so its more of a preview or RFC.

This patch also changes the state separator from "|" to "," to be compatible with Snort.

And finally, handle negation of SSL states.

- PR build: https://buildbot.openinfosecfoundation.org/builders/jasonish/builds/11
- PR pcaps: https://buildbot.openinfosecfoundation.org/builders/jasonish-pcap/builds/11
> would 'record_flags' be a more descriptive name? If I read the code correctly, it's set per record.

current_state?  Thats really what it is, while flags is an accumulative state, which the app layer part seems to depend on which is why I broke it out as a separate var.