refactored engine TreeNodes from array to map

Conflicts:
	src/main/java/net/pms/newgui/TranscodingTab.java
isNative() method for Player implementation instead of string constant
comparison

Conflicts:
	src/main/java/net/pms/encoders/Player.java
removed misleading comments and unnecessary NPE catch