Lookup implementation

PR @zancas's work on lookup. PRs make it easy to do code reviews when new commits are pushed.
I think we should define a different exception here, as the user should be agnostic of the fact that HTTP is used for communicating with the blockchain. @taoeffect may weight in.