remove needless destructor
refactor registering constants
should be consider little endian
move finfo block to bottom
add method proto