Add OnChatToNPC and OnInstantMessageToNPC messages to NPCAvatar to allow region modules to directly subscribe to chat and messages received by NPCs

Currently still requires INPC from NPCModule.GetNPC() to be cast to an NPCAvatar.
Bump OPenSimulator version and assembly versions up to 0.8.0 Dev
Update an AssmblyVersion property that I missed to 0.8.0
Added SimulatorFeatures/OpenSimExtras: say-range, whisper-range, shout-range, at the request of Singularity dev Liru-Dargon
* Add an initial complete frame timeout to the WebSocket processor to make it easier to write WebSocket service code that is resistant to Denial of Service attacks.
* Added a unique and interesting WebSocket grid login processor by hijacking the LLSD login code.    This sends the data through the normal login channels and spits out a JSON object back that mimics the login response.    Feel free to comment on the best way to set this up as a config option.
varregion: add new TerrainData and TerrainCompressor routines. TerrainCompressor needed to replace the one in libopenmetaverse that doesn't know about the larger terrain packets.
varregion: remove scattered use of Constants.RegionSize by having routines reference RegionInfo.RegionWorldLoc?.
varregion: plug in TerrainData class and modify TerrainModule and LLClientView to use same. This passes a terrain info class around rather than passing a one dimensional array thus allowing variable regions. Update the database storage for variable region sizes. This should be downward compatible (same format for 256x256 regions).
Merge branch 'master' into varregion