Add leshan client

This is the first merge of our leshan client with the caveat that we need to resolve the last thing in leshan-client-standalone (which we will look at this evening).  But we wanted to get this out to you so you can take a look at the work :)

-The Zatarians (John, Simon, Josh, Andrew)
Question regarding unifying the LwM2mResponse structure:

leshan-client follows the pattern below.
```java
LwM2mResponse success = ReadResponse.success(someByteArray);
LwM2mResponse failure = ReadResponse.failure();
```
Whereas leshan-core uses constructors.
```java
LwM2mResponse success = new ReadResponse(ResponseCode.CONTENT, someByteArray);
LwM2mResponse failure = new ReadResponse(ResponseCode.BAD_REQUEST);
```
I think that the former is a bit easier to use, since now you can use the compiler to prevent bad combinations, like CONTENT with no payload.

Would you object to my pulling the leshan-client structure into leshan-core and update the server code to match?