No need for this if condition, an exception will be thrown if something
goes wrong
There is no parent constructor
Simplifying this condition
We don't need a data array anymore, just the app id
No longer downloading in the constructor
Privatising some properties
Removing methods which aren't needed
Throwing exception if rate does not exist
Cleaning up code