taskstats: sync with the new netlink core

Fix marshalling and alignment.

Bug-Url: https://github.com/svinota/pyroute2/issues/23
taskstats: simple example added
generic: allow packed fields

Background
========

When you try to decode a struct, the alignment does matter. And results
for unpacking H, B, B, I, Q (in terms of struct module) and HBBIQ will differ.

Change
=====

Since the revision 8e7333f1ce6c95d014a35cda49edee7d9d73a1c6, the
library uses only the first approach. But, obviously, it was a mistake. So the
first step is to allow packed struct, now only for decoding.

Used in taskstats module.

Bug-Url: https://github.com/svinota/pyroute2/issues/23
Bug-Url: https://github.com/svinota/pyroute2/issues/25
netlink: allow custom timeout for responses
taskstats: implement continous monitoring

Two requests are implemented: register and deregister cpu mask.

Bug-Url: https://github.com/svinota/pyroute2/issues/26
iproute: change the default scope for addr

The default scope for IPv4 addr was 0xfe (host), but other
utilities use 0x0 (global). This makes impossible to add
secondary ip address, when the primary was added by iproute2,
e.g. So use the scope 0x0 here, and make it customizable.

Bug-Url: https://github.com/svinota/pyroute2/issues/27
iproute: update the docstring for ip.addr
py3k compatibility, all tests passed
generic: add the default value to get_attr()
generic: cdata binary NLA type
generic: new attrs and messages for NG transport
netlink: completely new NL core

many tests are still disabled

plugins are dropped
generic: make decoded msg suitable for encoding
netlink: network transport

Plain unencrypted tcp, masquerade debugging
netlink: compatibility with old serve() interface
netlink: add default address for unix sockets
netlink: rewind envelope buffer before encoding
netlink: fix typo
netlink: silently drop routing errors (2B fixed)
netlink: drop responses w/o IPR_ATTR_CDATA (2B fixed)