Removed not needed trigger for specialupdate when INT attribute changed.

I removed this dependency a while ago. But forgot to remove this code.

Reviewed-by: bjorn.
Fixed guild support

List of things fixed:
- fixed having multiple guild support everywhere
- implemented kick code (untested due to missing kick possiblity in client)
- fixed giving owner rights to next member when owner leaves guild
- fixed potentional segmention fault when trying to access deleted guild after all members left
- fixed saving right changes to database
- made searching for guilds faster a bit (at least when having many guilds)

TODO:
 + Fix conflict between guild and normal channels
 + Fix being able to leave guild channel without leaving guild itself
 + Add kick possiblity to client

Reviewed-by: bjorn.
Fix compiler error in g++ (GCC) 4.7.0

Compiler error was due to variable redeclaration (variable inside of for
loop had the same name as the loop iterator variabele) - fixed through
renaming of the inner variable.

Reviewed-by: bjorn
Added debugging mode to the protocol

Allows inspection of message data. It is off by default since it consumes
additional bandwidth, but it can be turned on using the net_debugMode option
in manaserv.xml.

Currently the option only affects outgoing data for each host individually.
In particular, enabling this debug mode for the server does not automatically
make the client annotate its messages.

Reviewed-by: Erik Schilling
Small GCC 4.7 compile fix

Not entirely according to the standards since this is a C99 header,
but that's better than not having it compile at all, or switching
it entirely over to C++11 mode just now.
Fixed type of returned value from MapReader::readMap

GCC 4.7 warns about this, yay.
Some small optimizations in Lua helper functions

Reviewed-by: Ben Longbons
Don't send NPC text as fixed-length string

This is intended to be used only when the string length is known. The
client was deriving the length from the remaining amount of data in the
message, but that doesn't work in the new 'debug mode' of the protocol.

Reviewed-by: Ben Longbons
Removed no longer needed code

I forgot to remove this during my special cleanup

Reviewed-by: bjorn.
Fixed handling of skills

 - Removed possibility of skills getting mixed with attributes
 - Made the server sending the level of the current skill on exp change
   (currently the client could calculate it itself, but it allows more
    flexibillity in future this way)
 - Fixed reading of skills out of the database
   (for some reason the status effects were added as skills)

** Needs clientside patch as well (coming soon) **

Reviewed-by: Bertram.
Collisiondetection: Removing commented code.

Reviewed-by: Ablu
Rename AutoAttack to Attack
Work on (Auto)Attack system.

During the implementation bjorn and I agreed to limit the number of attacks that
can be used in the same tick to one. This makes a lot of stuff easier and the
client cannot display two frames at the same time

Things done:
 - Implemented setting of attacks when equipping/unequipping items
 - Single place where the xml attack node is parsed
 - Finished attack logic
 - Unified the attack handling of monsters and characters
 - Added a global cooldown after attack use
   (not only for next use of same attack)
 - Removed the temponary attributes for the monster attack values
 - Priorities for all attacks
 - Rewrote the attack core:
  - Attacks now have this attributes:
   - warmup -> time a attack needs after starting it to actually deal the damage
   - cooldown -> time a attack needs after dealing damage before another attack
                 can be used
   - reuse -> time before the same attack can be used again

  - If no attack is performed at the moment the following is done:
   - make a list with all ready attacks
   - check for attack that has the necessarily range and highest priority
   - start this attack (inform client about it)
   - when warmup is finished -> trigger damage
   - when cooldown is finished -> allow to use other (or the same if reusetimer
                                  allows) attacks
TODO:
 - sync client with this to allow better timed animations
Added script binds for getting attack information

New binds:
- Damage:
 - id
 - skill
 - base
 - delta
 - cth
 - element
 - type
 - truestrike
 - range
- Attack:
 - priority
 - cooldown
 - warmup
 - global_cooldown
 - damage
 - on_attack
- MonsterClass:
 - attacks
- ItemClass:
 - attacks
Added Vulnerabilities for monsters

You can now actually use the already used node in the monsters.xml
Monsters can have different vulnerabillities against elements:
<vulnerabillity element="earth" factor="2.0" />
This will double damage of the element earth to this monster.
Added script bind for getting specy id of a monster handle

Reviewed-by: bjorn.
Added bind for setting login callback

Reviewed-by: bjorn.
Made kill count script bind capable of taking the monster name as argument

Reviewed-by: bjorn.
Made sure the map is set for trigger scripts

Also unsetted maps after execution of scripts to make finding this mistakes easier.

Reviewed-by: bjorn.
Fixed small bug in attack core. warmup and cooldown was mixed