Improvements to manage network timeout on requesting bored instance

+ Added a lower timeout with a default of 10 seconds for the bored instance request.
+ Added checks for nil responses to enable fallback to the already-implemented default backup server address to use for posting an assembly.
+ Updated copyright notice on all files.

Desirable future changes:
- Find out why the timeout occurs over 3G in the first place, now that the code manages it.- Fix the error handling throughout so that NSError instances are correctly returned where expected.
- Simplify the top-level model if possible so that clients can use one object with a completion block, and no need to have knowledge of the Assembly object or anything else. As a client user I should be able to drop in the library and use it with 3 or 4 lines of code and no knowledge of the inner workings, and have it call my completion block when done (or with an appropriately useful Error object).