check for RTM_NEWADDR netlink.c

If the link local addr changes, we may need to reinitialize the
interface.
cleaning up some logging
Strict checking for link-local address

RFC 4291 requires that link-local addresses are within fe80::/64 even if the
link-local prefix is fe80::/10.

RFC 4291 IP Version 6 Addressing Architecture
  2.5.6.  Link-Local IPv6 Unicast Addresses

     Link-Local addresses are for use on a single link.  Link-Local
     addresses have the following format:

     |   10     |
     |  bits    |         54 bits         |          64 bits           |
     +----------+-------------------------+----------------------------+
     |1111111010|           0             |       interface ID         |
     +----------+-------------------------+----------------------------+
Add forward declaration for struct yydata
Set if_index in update_device_info

This was previously set in setup_linklocal_addr and was lost during refactoring.
Rename check_ifaces to setup_ifaces and refactor it to simplify error handling
Rename HasFailed to IsReady and reverse logic
Move config_interface and kickoff_adverts calls into setup_ifaces
Don't reload the whole config when a netlink event is received, just re-setup the interfaces

The next step would be to make this finer-grained and setup only the interfaces
mentioned in the netlink messages.
workaround for two sigints on Ctrl+c

When killing radvd with Ctrl+c, for some reason, two sigints are
received by radvd.  I don't really know why, but it's fairly easy
to adjust for this so radvd exits properly by expecting up to two
sigints before aborting.
rename IsReady -> ready
Adding a couple TODO comments
/return (-1);/return -1;/ in radvd.c
rename trim_logging -> trim_log
adding kill_radvd tests
clean up the scope in setup_linklocal_addr

This commit only moved the declaration of a couple variables into
the scope where they are used.
add indent control comments around usage strings

The usage text is formatted in a way that indent wants to change.
Using indent control comments, this commits tells 'make indent'
to leave that text alone.
make indent to clean up code style
Update CHANGES and VERSION to 2.0.0-alpha