replace Constructor with Serializable<FunctionProxy>

My first change was to make `Callback` implements `Serializable<FunctionProxy>`.
This allows to simplify the definition of functions that need a callback in parameter. Thus, you can type your callback as `Serializable<FunctionProxy>` and it will accept either `Callback` or `FunctionProxy` or `Serializable<FunctionProxy>` (otherwise, you should have typed the callback as `dynamic`).

A `Constructor` being a function, I have removed it and have used `Serializable<FunctionProxy>` instead.