IBM to split by end of 2021