Refactor Tasks

* Refactor common task logic into `L.esri.Tasks.Task` make all tasks inherit from `L.esri.Tasks.Task`
* New `L.esri.request` method that switches between GET and POST based on request length.