Fix address parsing issues

Fix issue where negating a range containing a negation would fail.

E.g. HOME_NET: [192.168.0.0/16,!192.168.10.0], can be used in a rule
     as !$HOME_NET.

Also, fix another parsing issue:

If the negation range would be bigger than the 'positive' range, parsing
wouldn't be correct. Now this case is rejected.

E.g. [192.168.1.3,!192.168.0.0/16] is now explicitly rejected

Ticket 1079: https://redmine.openinfosecfoundation.org/issues/1079

Prscript:
- PR build: https://buildbot.suricata-ids.org/builders/inliniac/builds/178
- PR pcaps: https://buildbot.suricata-ids.org/builders/inliniac-pcap/builds/98