Add DynDNS No-IP Free account support

The free No-IP account requires the IP address to be changed within every 30 days. If there is no change, the "last updated" date at No-IP does not get updated and the account lapses.
This change implements a double-update when the cache age reaches 25 days, or the user does "Save & Force Update" on the GUI. It updates the IP to a dummy address (192.168.1.1) and then 10 seconds later puts it back the way it was. After this process, the "last updated" date on the No-IP site updates.
To get this behavious, users have to select "No-IP (free)" as their DynDNS service type.
Make sure captiveportal section of config is an array, reported on ticket #2838
Ignore swap partitions when looking for external config file
Fix indent and whitespaces
Create rules for grouped interfaces before regular ones. Fixes #2837
Add VPNs and PPPoE rules before regular ones. Fixes #2837
Show cert start/end dates in list.
Always clear the OpenVPN route when using shared key, no matter what the tunnel network "CIDR" is set to, it still needs it.
Better check for the right bits being set.
Update usr/local/www/status_queues.php

Fixes the Drops issue and adds the Queue length information to the page. 
Merge pull request #438 from mdima/master

Status Queue page: Fixes the Drops issue and adds the Queue length information to the page. 
When auth algorithm is hmac-sha512, it produces long lines and wrap them, what breaks the parser. Ignore lines that starts with a space to fix it. Fixes #2842
Avoid DynDNS timeout delay when gateway is down

When a dynamic DNS entry is set on an interface that has a private IP, the code has to find the ultimate public IP of that interface by using checkip.dyndns.org. If the interface is currently down (e.g. ISP is down or the cable is unplugged...) then there is a timeout delay while waiting for checkip.dyndns.org to (not) respond.
This causes a big delay when Services->Dynamic DNS is selected.
Ift he new DynDNS dashboard widget is enabled, then the big delay happens while drawing up the dashboard display - not very user-friendly.
This code checks to see if the interface is down - if so it avoids bothering to do the external IP check.
Fix indent, whitespaces and unbalanced <tr> and <td> tags
Merge pull request #439 from phildd/master

Avoid DynDNS timeout delay when gateway is down
trim whitespace from ping host

Added trim() function to the $host variable. If whitespace is in front
of the host or IP address the ping command will fail.
Merge pull request #440 from neo14/master

trim ping host
no IPv6 check when an easy rule: pass is created

The easyrule_pass_rule_add() now checks for an IPv6 address and sets the
netmask accordingly.
This is the fix for bug: http://redmine.pfsense.org/issues/2843
Merge pull request #441 from neo14/master

Set correct netmask for IPv6 addresses when creating an easy rule: pass
Merge pull request #429 from ExolonDX/master

Tidy up HTML errors in INDEX.PHP