OZP-61: Migrate RPC API.

1. Fixed bug where an Untitled dashboard (created when there are no dashboards left for a user) doesn't save widget state until browser refresh due to the widgets array getting out of sync.
2. Fixed bug where layoutPane widgets array isn't initialized by ensure it is set in the initialize function.
3. Added tests for layoutPane to ensure the widgets array is working properly as well as widget launching.