accept arbitrary JSON params
make request async, add jquery type declarations