Add 'isa_instance_of' attribute option

Adding an instance type constraint to an attribute can be done easily with:

    isa => 'PackageName',

...however, this is suboptimal, for reasons discussed at significant length
and volume elsewhere on the interwebs.  Instead, you could do:

    use Moose::TypeConstraints 'class_type';
    # ...
    isa => class_type('PackageName'),

...but that's wordy, and for some reason, confuses my simple little brain.

Given that what we're trying to express is "the value this attribute holds isa
instance of the PackageName class", why not just say that?

    isa_instance_of => 'PackageName',

Voila.  Also a little wordy, but completely encapsulated inside the attribute,
non-confusing to me, clearly expresses the intent of the author.
Add tests for isa_instance_of
update travis config