Also, in the sentence Он сыграл в кино десятки ролей, is десятки a
declension of десятка or десяток?
this is a declined десяток
десятки is never meant in a literal sense of quantity but just used to indicate a great amount within certain limits — in this case under 100.
In this usage, as Alex_ander noted, it's used idiomatically to refer to blocks of ten, Cf. dozens.
Likewise cотни, тысячи, десятки тысяч and so on.
At the same time, десяток and the nouns just listed can indicate a precise number if qualified by a numeral
Он сыграл в кино два десятка ролей
or express uncertainty about the accuracy of the number (quantity) if followed by one (there's a more general syntactic rule at work here)
Он сыграл в кино десятка два ролей
So, in an attempt to summarize this, it might be said that десятка (and any other numerical cognate noun ending in -ка such as тройка, семёрка, двадцатка, пятидесятка and so on) can be applied to something solid and indivisible, whereas десяток - to a set of separate items of one kind.
The difference can be seen in the following sentence:
Я купил десяток (штук) десяток = Я купил десять (штук) десяток
where the 2nd десятка means an item numbered 10, for example a spool of sewing thread size 10, and so the entire sentence means I bought ten items of the (number) 10.