fix static analysis violations
remove use of IntArray; except for clone()

Remove remaining usage of IntArray; java's List should be used instead.
IntArray.clone() will remain as an alias to System.arraycopy().
remove common code from [Gen,Reg]GameState

Add boardNotEditable() to GameState, called in handleMove().
move the switch on type to GameState instead of Gen/Reg classes.
This requires GameState to implement Handler.Callback because the
xhandle can not be initialized early enough.

Simplify GameState constructor; remove Activity and Bundle
The Activity and Bundle can be obtained from the GameFrag by calling
getActivity and getArguments respectively. Similarly, remove settings
Bundle from GameFrag because it can also be obtained from getArguments()
draw TabText underline using DP instead of pixels

One high ppi screens difference between between the active and non active
underline states is not as noticable. Using DP makes things consistent.
use Queue interface for MoveList.pool
make classes implement Handler.Callback instead of making local Handler

Many classes used an anonymous Handler class stored in a class variable
for handling message callbacks:

	Handler handle = new Handler() { ... }

Instead, the class should implement Handler.Callback which requires adding
boolean handleMessage(Message) and create the handle variable with:

	Handler handle = new Handler(this);
add request setup helper functions to NetworkClient

add newRequest() and addValue() to simplify creating a new request
object. Also make all strings in NetworkClient private final static.
update android target to 19 (4.4)
check Intent for null when receiving local game

both the Intent and Intent.getData() can be null.
only call CallBack if dialog has positive results

CallBackPreference.CallBack.runCallBack() doesn't need to pass the
results of the dialog (ok,cancel). Instead only call the CallBack
when ok was pressed in the dialog.
add missing uses of PrefKey
reorganize settings preferences

improve the organization of the categories. Add sub preference
pages for ringtone/vibrate settings and db tool settings.
add ON_BOARD and OFF_BOARD helper functions to BaseBoard
fix static analysis violations
add Pref to manage preference keys and default values

getting values from a SharedPreferences requires a string key and
a default value. PrefKey was added to manage the keys, but the
default values were still located at every preference getter call.

This is fix using typed array xml resources. The first array item holds
the preference key and the second holds the default value. Using the
Pref class, values are retrieved with their proper default values and
require only the R.array int value of the xml array name.
allow board square colors to be customized

add another preference to Settings called "Board Colors" which allows
modifying the board square colors. The ColorPickerPreference class
extends Preference and saves/displays color preferences. Using the
ColorPickerDialog dialog class a color can be slected in the HSV
format. The colors are set in GameFrag.onCreateView().
update copyright year and formatting of copyright header
revert GenesisNotifier implementing Handler.Callback

commit 75a32d0b8f59a2f2a9eddef7f7e51a0a04ab478f made classes having
a local Handler implement Handler.Callback instead. This worked in
all cases except GenesisNotifier which caused a runtime exception:

Can't create handler inside thread that has not called Looper.prepare()

This is because non-ui threads don't have a Looper to handle messages.
Fixing this would require 2 threads and more refactoring. For now
just revert to the previous working version.
flatten type hierarchy of PieceImg

PieceImg is now abstract and has no onDraw implementation but helper
draw functions. BoardButton, PlaceButton and CapturedPiece extend it
directly.

remove square_light.png and square_dark.png from PlaceLayout and use
BoardButtons instead (so when the use modifies the board colors).
fix piece selection glitches

prevent both selecting pieces and long board clicks when it's not your
turn. This fixes the glitch where you could place pieces when it wasn't
your turn and move your opponent's piece on their turn.