James Hamilton (British Army officer, born c. 1620)