Updated ciniki.web to use generic object functions and JSON callbacks