Intel10g: rx_buffsize config and check

This is supposed to fix #272 
-  driver: The config parameter `rx_buffsize` is used to set the receive queue buffer size (rounded down to KB increments and clipped to 16KB max)
-  driver: Before adding a buffer to the descriptor ring `rxdesc`, the size is `assert()`'ed to be big enough.
-  intel_app: Before accepting a given `rx_freelist`, each buffer in it is checked for minimum size.

I don't know if the virtio app can switch from zero-copy to non-optimized at any time, so i opted for checking the whole freelist immediately, and ignoring it if it's not acceptable.
Sounds good.

Does this mean we can safely remove the whole API for `rx_buffersize` and make the diff smaller? I mean, because internally the `intel10g` module can auto-tune to find the right buffer size (by starting with the maximum and then clamping each time a buffer is added).