Create new, pure js validator that is faster

On example data I downloaded, Joi runs in 2484 milliseconds.  Joy runs in 38 milliseconds and I believe it is verifying the same stuff.

@jebeck @nicolashery Give this a once over and make sure you believe it's verifying the same stuff as well.

I veered off from the Joi API in a couple places.  The biggest is that I assumed that things are generally required and if they are optional, that should be pointed out.  Joi does it the other way and forces you to specify what is required.