Make macros that aren't reversible readOnly

Macros that perform a "reversible" operation (i.e., "not") can be written in a way that supports reading and writing, but many of the ember-cpm computed property macros do not fit into this category.

I've picked those that seem to be good candidates for `readOnly` and added tests to ensure they throw exceptions in the event of misuse.