SyncMultiFrameListener changes

 - hide implementation using pimpl - fixes #48
 - added non-blocking method to check if all frames are available - fixes #56
 - added timed wait function if compiled with c++0x or c++11