Require files dynamically

Updated so we could merge @zcpdog's idle PR

- require version file dynamically
- make interface more ruby-like (Lob() to Lob.load)