Sanitize widget instances for customizer

 * Ensure that instances saved to DB are sourced via widget update callback function
 * Serialize widget instances to JS in a way which preserves the non-JSON compatible dat.
 * Remove dead code related to tallying widget instances
 * Refactor update callback logic
 * Add method for parsing a widget setting ID, refactoring duplicated logic

Fixes #28
Send previously-sanitized instance when model changes

Clean-up after the input vars are manually set when a sanitized instance is provided
Throw exceptions instead of alerting errors
Base64-encode serialized instances to protect backslashes in strings
Add temp filter to JS-sanitize old settings revisions