For online web wallets i would prefer multi sig wallets (i think blocktrail has this feature) and for offline i would suggest Trezor(very expensive)
I don't think blocktrail allows users to control any of the keys. For optimal security, the user must control at least n-of-m keys and the service must control less than n. This prevents the service from hacking any of your coins. Trezor is too expensive, Ledger HW1 is a cheaper option.