Rewrite of preload cds function in data service

@pbouzakis - I've set this up as its own pull request in response to your comment here:

https://github.com/c-h-russell-walker/manage-cds/commit/e88cfc4b2d4c6b238803ee0c7b476d1840f5214a#commitcomment-8865523

I wasn't sure if this was how you envisioned the update and also I needed to manually trigger the observable update which seemed incorrect.

Would love to know why that's the case and any other feedback - thanks!