Basic Category Theory for Computer Scientists