Abide rewrite

I've rewritten the Abide component to add some missing functionality and clean up the code a little.

Most important change is validation of the form on every change inside of it. This way we can do stuff like showing/hiding "Submit" button based on completion of the form.

I've also changed the selectors from "form" to [data-abide] as sometimes people might want to use Abide outside of the normal form (or only on part of it - think multi-step forms etc).

I've also removed the is_ajax parameter - to be honest I do not understand exactly how it was supposed to be used, and I believe that with my implementation it is not needed anymore. Please correct me if I'm wrong.

Regards,
Michał Kałużny