In reply to Thomas.

+1 to this, i maybe biased because i am developing plugins, but i do think that all business logic including shortcodes should be managed by plugins,