A custom exception `NotesUnavailableException` will be thrown on attempts to load the "admin-note" data store using the `Notes::load_data_store()` method introduced in this PR.
All calls to `\WC_Data_Store::load( 'admin-note' )` were replaced with calls to the above method.
* Add a new note about the variable product when the owner adds the first product
* Attempt to add a new note when a product gets published
* Change logic to check only post status and type
* Add tests cases