log: make it pass ccanlint (on Linux, at least)

1) _info example does not compile, due to missing close of function.
2) <log.h> does not exist on my system
3) You should always include your own prototypes, so include <ccan/log/log.h>
4) log_tags[] should not be defined in header, otherwise everyone who includes
   log.h will get their own copy, and it's unused anyway.
5) set_log_file() should take a const.
6) get_log_mode() should use modern (void) C style.
7) get_log_mode() returns an int according to the header.
8) _print_log() should mostly take const char *.
9) ccanlint wants the license mentioned in every file.

There are still no tests, and there really should be!

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>