Login with basic validation

Added login capabilities
Added very basic form validation ( fields are not empty ), to prevent unnecessary calls to DB.


<!---
@huboard:{"order":8.0,"milestone_order":27.0,"custom_state":""}
-->

you can't do that.  `hasLoggedIn()` uses the state and you just modified the value. `setState` is async therefore you cannot guarantee that the value is available right after setting it. Either directly use res.success to make your check, or define a function as a second argument in `setState` like
```javascript 
self.setState({ loggedIn: res.success},
function(){
  // do/check stuff
});
```