added Types.Extends and Types.InstanceOf

Hi,

Sometimes it's necessary to supply an instance of a class or a subclass in a configuration object. It'd be nice if we could natively validate that.

Anyway, this is a hack. There might be a better way of doing it. Maybe put it in `Types.Function`'s prototype.

It works for any method that uses simple prototypal inheritance, so it works with coffeescript too.

Here is an example in coffeescript:

```coffee
class BaseClass

class SubClass extends BaseClass

theInstance = new SubClass

schema = 

    # For instances
    instance: Joi.Types.InstanceOf(BaseClass).required()

    # For subclasses
    sub: Joi.Types.Extends(BaseClass).required()
```