Add weekly spend chart
fix sql exception processing
add preferences
preliminary support for web-json-servic client side