New feature: Allow custom theme paths and better theme handling