Fixes: 1) Update `remove_product` model method to handle zero quantity removal; 2) Correct permission check in order product removal.
Extra: 1) Add `autocomplete_fields` for products in admin; 2) Enhance docs with bulk add/remove schemas; 3) Various code refactorings and minor tweaks for improved maintainability.