Fleshing out the client further

Update client to be close to final state.
Updated database tables and procedures.
updated web service to reflect database changes.