title: Replacing boost::functionN in C++11 with GCC 4.9.2
body: <p>I'm trying to build (in Windows) with GCC 4.9.2 the eGUI library by John Torjo, removing every dependence from <code>boost</code>.<br/>
  In several files I find this typedef:
      <code>typedef std::function1 &lt;void, event_type &amp;&gt; func;</code><br/>
  Compiling, I get the following error:<br/>
  <code>.. \ .. \ Egui \ core \ detail \ event_handler.hpp | 44 | error: 'function1' in namespace 'std' does not name a template type |</code><br/>
  The boost documentation defines the <b>Class template FunctionN</b>:
  <code>boost::FunctionN</code> - <i>A set of generalized function pointers That can be used for callbacks or wrapping function objects</i>.
  Now, I ask: <code>boost::function1</code> may be replaced by some standard class?
  In <code>&lt;functional&gt;</code> I don't seem to find anything that might serve the purpose.</p>