Replacing OpenStruct with custom class

Instead of relying on OpenStruct, which has a heavy Ruby method
caching cost, rely on a custom class.
Changing default rake task to run offline tasks

Instead of running all of the tests, which can take 20 seconds and
hits the remote API, rely instead on offline tests.

Also providing the inverse spec for running only the tasks that
require net connect.