Yes, a "general" system can be designed. In fact, they already exist (see, for example Avalara, which does exactly what you aim to do). It took hundreds of developers and hundreds of accountants and lawyers to make these systems work, and the companies that run these systems make
thousands of dollars a year from
each business customer. And businesses that sell to multiple states/countries gladly pay, because it would cost
even more to try and build such a system in-house.
I think a general system could be designed such that most of the classifying work is done up front
The classifying work of products and services already exists. In fact, there are standardized classification systems in the U.S. and the EU. That is not the problem.
shop owners could opt-in or add additional rules to the algorithm.
No, they can't. Because there is no one algorithm to calculating the tax applicable to a transaction. There are thousands of different algorithms, many of which get changed on a yearly basis (and in some cases, even within a year due to special events like disasters). Each tax jurisdiction has its own rates and components. Within a single county, you can have different cities levying their own separate sets of factors and rates when determining sales tax. (See, for example, LA vs Santa Monica for examples of different rates on the same components, or any city in Colorado vs any other city in Colorado for examples of cities within the same county using different components and different rates.)
I think the 20% could be squeezed and solved a number of different ways especially in the name of the public.
Quite frankly, the storefront component is the 20%. You would need to devote 80% of your time to the tax component.
Note: in the "name of the public" the EU has introduced the VATMOSS system to simplify filing VAT reports throughout the EU, and the Streamlined Sales Tax program in the U.S. aims to do the same for filing US sales tax returns. However, filing sales tax/VAT returns was always the easy part of all of this; the hard part has always been figuring out the appropriate sales tax to apply to a transaction.