realtime: extend queue, implement packet_queue

* Extend lockfree single-producer-single-consumer queue
  with methods for batch pushing/popping.

* Implement packet_queue on top of queue:
  it is a queue of arbitrarily large byte packets.
realtime: Runner: add OSC communication

Implement setting controls and receiving control change notifications
using OSC over UDP, using oscpack and our lockfree thread-safe
packet_queue.

More work is needed to make this completely real-time safe:
mainly due to usage of std::string which involves dynamic memory
allocation.
realtime: UDP receiver: catch & report failure to set up socket
apps: runner: add options for OSC communication