diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 294073ce07ba29938fb2848a8ed355b7bf66034a..0000000000000000000000000000000000000000
--- a/.travis.yml
+++ /dev/null
@@ -1,7 +0,0 @@
-language: node_js
-node_js:
-   - "0.11"
-install:
-   - "npm install jshint"
-script:
-   - "jshint *.js"
diff --git a/README.md b/README.md
index 7ff5cbb88d15f6fd0d042ced206dcd8c562cd26c..86e2969beff8bc03e89f14c2543f8862d7d84c9f 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,5 @@
 # Ethereum JavaScript API
 
-[![Build Status](https://travis-ci.org/ethereum/ethereum.js.svg?branch=master)](https://travis-ci.org/ethereum/ethereum.js)
-
 This is the Ethereum compatible JavaScript API using `Promise`s
 which implements the [Generic JSON RPC](https://github.com/ethereum/wiki/wiki/Generic-JSON-RPC) spec.
 
diff --git a/httprpc.js b/httprpc.js
index f7f870d9ddae46315310b3a9f5cf5340a5367daf..085b4693d4068307b03421c3119563ce5fdbabca 100644
--- a/httprpc.js
+++ b/httprpc.js
@@ -10,8 +10,8 @@
             method: object.call,
             params: object.args,
             id: object._id
-        };
-    }
+        }
+    };
 
     function formatJsonRpcMessage(message) {    
         var object = JSON.parse(message);
@@ -20,7 +20,7 @@
             _id: object.id,
             data: object.result
         };
-    }
+    };
 
     HttpRpcProvider.prototype.sendRequest = function (payload, cb) {
         var data = formatJsonRpcObject(payload);
@@ -32,7 +32,7 @@
             if (request.readyState === 4 && cb) {
                 cb(request);
             }
-        };
+        }
     };
 
     HttpRpcProvider.prototype.send = function (payload) {
diff --git a/main.js b/main.js
index 320c4e1a260384bdc459a6d7a8dc3300d2bf9795..1f609220bdd20b6ac20d49afd31c1435ae480ddb 100644
--- a/main.js
+++ b/main.js
@@ -1,6 +1,6 @@
 (function(window) {
     function isPromise(o) {
-        return o instanceof Promise;
+        return o instanceof Promise
     }
 
     function flattenPromise (obj) {
@@ -40,7 +40,7 @@
         }
 
         return Promise.resolve(obj);
-    }
+    };
 
     var ethMethods = function () {
         var blockCall = function (args) {
@@ -171,7 +171,7 @@
                     }).catch(function (err) {
                         console.error(err);
                     });
-                };
+                }
             }
             Object.defineProperty(obj, property.name, proto);
         });
@@ -196,8 +196,8 @@
             var str = "";
             var i = 0, l = hex.length;
             for(; i < l; i+=2) {
-                var code = hex.charCodeAt(i);
-                if(code === 0) {
+                var code = hex.charCodeAt(i)
+                if(code == 0) {
                     break;
                 }
 
@@ -216,18 +216,22 @@
             var hex = this.toHex(str);
             while(hex.length < pad*2)
                 hex += "00";
-            return hex;
+            return hex
         },
 
         eth: {
+            prototype: Object(),
             watch: function (params) {
                 return new Filter(params, ethWatch);
             },
         },
 
-        db: {},
+        db: {
+            prototype: Object()
+        },
 
         shh: {
+            prototype: Object(),
             watch: function (params) {
                 return new Filter(params, shhWatch);
             }
@@ -239,7 +243,7 @@
             }
 
             web3._events[event][id] = cb;
-            return this;
+            return this
         },
 
         off: function(event, id) {
@@ -247,7 +251,7 @@
                 delete web3._events[event][id];
             }
 
-            return this;
+            return this
         },
 
         trigger: function(event, id, data) {
@@ -372,7 +376,7 @@
 
     Filter.prototype.arrived = function(callback) {
         this.changed(callback);
-    };
+    }
 
     Filter.prototype.changed = function(callback) {
         var self = this;
@@ -412,7 +416,7 @@
         if(data._id) {
             var cb = web3._callbacks[data._id];
             if (cb) {
-                cb.call(this, data.data);
+                cb.call(this, data.data)
                 delete web3._callbacks[data._id];
             }
         }
diff --git a/qt.js b/qt.js
index 2f532f942c88a3d20ea73dc7ad6f40e024deb727..644c3773784bcf1add5ee034dfe5184520dcfe4f 100644
--- a/qt.js
+++ b/qt.js
@@ -7,7 +7,7 @@
             self.handlers.forEach(function (handler) {
                 handler.call(self, JSON.parse(message.data));
             });
-        };
+        }
     };
 
     QtProvider.prototype.send = function(payload) {
diff --git a/websocket.js b/websocket.js
index 63855ade16ff4fc0f65e3b760f9553f72a734eb1..732a086f294ac7def12c28f44262a8777cdfa32a 100644
--- a/websocket.js
+++ b/websocket.js
@@ -11,7 +11,7 @@
         var self = this;
         this.ws.onmessage = function(event) {
             for(var i = 0; i < self.handlers.length; i++) {
-                self.handlers[i].call(self, JSON.parse(event.data), event);
+                self.handlers[i].call(self, JSON.parse(event.data), event)
             }
         };