Remove unused struct

Change-Id: I217620ea99c809b7f3bf1a403170168ac01ed06a
Drop useless const

Change-Id: Ifcdd921b08af10ff17dc3da7b811b6aed74baf98
catch exception by const ref

Change-Id: Id0a9e3b52cabff7be99a5bba6ddb0a108a325d42
Call it noncopyable

Change-Id: If2e14b333868bb10867e54cd28c83d0d2c6a5e43