ifq: Use ifq_set_maxlen for ifnet.if_snd
sctp: Don't test ifq_len against ifq_maxlen; let IFQ make the decision
ip6: Don't test ifq_len against ifq_maxlen; let IFQ make the decision
ifq: Move ifq_set_maxlen declaration to the declaration code block
Add native dports support

DPorts, the ports building system tailored for Dragonfly,  requires
five bsd.*.mk scripts to be placed at /usr/share/mk in order to work
on DragonFly without any type of bootstrapping.

After installing dports using the /usr/Makefile script, any dport can
be built using the same instructions as FreeBSD (e.g. make install clean)

The resulting packages will be handled by "pkg", which will also be used
in the future for downloading prebuild binaries from an official
repository.
/usr/Makefile: Support dports and add error checking

* Check for git before issuing git command
* Check if directories existing when expected for a target
* Check if directories do not exist when they shouldn't for a target
* Issue error messages when above criteria are not met
* Convert to prinf to make spacing changes easier in future
* Remove options from help screen that are currently invalid
  ("make" by itself now reflects only options that are valid at the time)
* Remove reference to cvs repositories, that's obsolete now
* Add "dports-create" option (full git repository cloned from github)
* Add "dports-create-shallow" option (Depth=1 repository github clone)
* Add "dports-update" option to pull latest from git repository
* Add "dports-download" option (Download tarball from github, extract)
  (Has benefit that dports can be installed without git on system).
* Add "dports-replace" option (When dports was previously installed from
  tarball, use the option to replace it by downloading and extracting
  newer tarball)
* general cleanup
ifq: Add ifq_purge_all(); currently it's same as ifq_purge()

This paves the way for the multiple transmission queues support.

ifq_purge_all() is used when ALTQ packet scheduler is changed,
interface routing is changed and pseudo devices are closed.
atm: Use ifq_dispatch() instead of ifq_handoff()
vlan: Use ifq_dispatch() instead of ifq_handoff()
netgraph7/iface: Use ifq_dispatch() instead of ifq_handoff()
emx: Fix comment
igb: Fix comment
pktgen: Pregenerate 3/4 of the ifq_maxlen should be enough
em: Don't update TDT upon very packets transmitted

Merged following commits on emx(4):
7f32a9b0f8f25e43ab2ae4ee0d82ce69325d3b4b
0aba36eb844503423f414a3235eca72a78dc575a
b691889cfe23462069618f44bcf2ba0e71dcbb79

With following exception:
This optimization is not performed for 82547
re: RealTek8111F found in ASUS C60M1-I

DragonFly-issue: http://bugs.dragonflybsd.org/issue2479
if_vke
Revert "if_vke"

This reverts commit 8e3ef667d37ca26db190779e67073d6a16b47b88.

Wrong master branch pushed.
libstand - Make ether_sprintf() public.

* Use ETHER_ADDR_LEN for ethernet address length where
  appriopriate.

Pointed-out-by: swildner
boot - Use ether_sprintf() where appropriate.

%D is non standard and it is going to be removed soon.
Reinforce that make dports-replace does not update, but _replaces_ ./dports.