Handle exception when adding a bmark w/o url

When doing an empty POST to /:username/bmark, Pyramid would throw an
exception ("No JSON object could be decoded"), resulting in an Internal
Server Error for the user.

Updated api docs to include required `url` param.
Add test cases for checking failures in bmark_add